From 67117576d0bdac06428ab2e11e0dcb66a86ea8ff Mon Sep 17 00:00:00 2001 From: Alexey Botchkov Date: Thu, 4 Jun 2009 19:37:20 +0500 Subject: [PATCH 01/12] Bug#44470 innodb_file_io_threads precludes mysql from starting the innodb_file_io_threads option isn't present here. Changed with the innodb_read/write_io_threads per-file comments: support-files/my-innodb-heavy-4G.cnf.sh --- support-files/my-innodb-heavy-4G.cnf.sh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/support-files/my-innodb-heavy-4G.cnf.sh b/support-files/my-innodb-heavy-4G.cnf.sh index 60b8138880e..3601812934d 100644 --- a/support-files/my-innodb-heavy-4G.cnf.sh +++ b/support-files/my-innodb-heavy-4G.cnf.sh @@ -397,9 +397,10 @@ innodb_data_file_path = ibdata1:10M:autoextend #innodb_data_home_dir = # Number of IO threads to use for async IO operations. This value is -# hardcoded to 4 on Unix, but on Windows disk I/O may benefit from a +# hardcoded to 8 on Unix, but on Windows disk I/O may benefit from a # larger number. -innodb_file_io_threads = 4 +innodb_write_io_threads = 8 +innodb_read_io_threads = 8 # If you run into InnoDB tablespace corruption, setting this to a nonzero # value will likely help you to dump your tables. Start from value 1 and From 782b8f055069067fda1b53dde5da35b3040a43f3 Mon Sep 17 00:00:00 2001 From: MySQL Build Team Date: Thu, 4 Jun 2009 18:47:38 +0200 Subject: [PATCH 02/12] Some portability fixes. include/Makefile.am: use @PERL@ to call scripts/dheadgen.pl - don't rely on #! /usr/bin/perl scripts/dheadgen.pl: use 2-arg open() for compatibility with older Perl versions storage/innobase/srv/srv0srv.c: Don't use C++-style comments in C code --- include/Makefile.am | 2 +- scripts/dheadgen.pl | 12 ++++++------ storage/innobase/srv/srv0srv.c | 22 +++++++++++----------- 3 files changed, 18 insertions(+), 18 deletions(-) diff --git a/include/Makefile.am b/include/Makefile.am index 214ef8862e9..dd6f53f7ca2 100644 --- a/include/Makefile.am +++ b/include/Makefile.am @@ -87,7 +87,7 @@ probes_mysql_dtrace.h: $(DTRACEPROVIDER) endif probes_mysql_nodtrace.h: $(DTRACEPROVIDER) - $(top_srcdir)/scripts/dheadgen.pl -f $(DTRACEPROVIDER) > $@ + @PERL@ $(top_srcdir)/scripts/dheadgen.pl -f $(DTRACEPROVIDER) > $@ # Don't update the files from bitkeeper %::SCCS/s.% diff --git a/scripts/dheadgen.pl b/scripts/dheadgen.pl index 5ead0f90a31..374b232a04e 100755 --- a/scripts/dheadgen.pl +++ b/scripts/dheadgen.pl @@ -267,23 +267,23 @@ usage() if ($infile !~ /(.+)\.d$/); # If the system has native support for DTrace, we'll use that binary instead. # if (-x '/usr/sbin/dtrace' && !$force) { - open(my $dt, '-|', "/usr/sbin/dtrace -C -h -s $infile -o /dev/stdout") + open(DTRACE, "-| /usr/sbin/dtrace -C -h -s $infile -o /dev/stdout") or die "can't invoke dtrace(1M)"; - while (<$dt>) { + while () { emit_dtrace($_); } - close($dt); + close(DTRACE); exit(0); } emit_prologue($infile); -open(my $d, '<', $infile) or die "couldn't open $infile"; -@lines = <$d>; -close($d); +open(D, "< $infile") or die "couldn't open $infile"; +@lines = ; +close(D); while (1) { my $nl = 0; diff --git a/storage/innobase/srv/srv0srv.c b/storage/innobase/srv/srv0srv.c index e0fe6f40197..21aafcfd7d7 100644 --- a/storage/innobase/srv/srv0srv.c +++ b/storage/innobase/srv/srv0srv.c @@ -422,28 +422,28 @@ FILE* srv_misc_tmpfile; ulint srv_main_thread_process_no = 0; ulint srv_main_thread_id = 0; -// The following count work done by srv_master_thread. +/* The following count work done by srv_master_thread. */ -// Iterations by the 'once per second' loop. +/* Iterations by the 'once per second' loop */ ulint srv_main_1_second_loops = 0; -// Calls to sleep by the 'once per second' loop. +/* Calls to sleep by the 'once per second' loop */ ulint srv_main_sleeps = 0; -// Iterations by the 'once per 10 seconds' loop. +/* Iterations by the 'once per 10 seconds' loop */ ulint srv_main_10_second_loops = 0; -// Iterations of the loop bounded by the 'background_loop' label. +/* Iterations of the loop bounded by the 'background_loop' label */ ulint srv_main_background_loops = 0; -// Iterations of the loop bounded by the 'flush_loop' label. +/* Iterations of the loop bounded by the 'flush_loop' label */ ulint srv_main_flush_loops = 0; -// Calls to log_buffer_flush_to_disk. +/* Calls to log_buffer_flush_to_disk */ ulint srv_sync_flush = 0; -// Calls to log_buffer_flush_maybe_sync. +/* Calls to log_buffer_flush_maybe_sync */ ulint srv_async_flush = 0; -// Number of microseconds threads wait because of -// innodb_thread_concurrency +/* Number of microseconds threads wait because of +innodb_thread_concurrency */ static ib_longlong srv_thread_wait_mics = 0; -// Number of microseconds for spinlock delay +/* Number of microseconds for spinlock delay */ static ib_longlong srv_timed_spin_delay = 0; /* From 76bcf79c6b64908dc1f8696f25204229084e3aad Mon Sep 17 00:00:00 2001 From: MySQL Build Team Date: Fri, 5 Jun 2009 00:29:41 +0200 Subject: [PATCH 03/12] Apply fix for bug#45131, "Problems building on 32-bit linux". As described in the bug, the problem is not new in 5.4, but newly tickled. We need a register whose lower 8 bits can be accessed, and must request such from the assembler. Using a "q" constraint instead of "r" constraint accomplishes this. --- include/atomic/x86-gcc.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/atomic/x86-gcc.h b/include/atomic/x86-gcc.h index d79dadbf05e..726c98213fb 100644 --- a/include/atomic/x86-gcc.h +++ b/include/atomic/x86-gcc.h @@ -35,7 +35,7 @@ asm volatile (LOCK "; xadd %0, %1;" : "+r" (v) , "+m" (*a)) #endif #define make_atomic_swap_body(S) \ - asm volatile ("; xchg %0, %1;" : "+r" (v) , "+m" (*a)) + asm volatile ("; xchg %0, %1;" : "+q" (v) , "+m" (*a)) #define make_atomic_cas_body(S) \ asm volatile (LOCK "; cmpxchg %3, %0; setz %2;" \ : "+m" (*a), "+a" (*cmp), "=q" (ret): "r" (set)) From 8057aca3f29dcb2832fba71b62dfeadd74cb1373 Mon Sep 17 00:00:00 2001 From: unknown Date: Fri, 12 Jun 2009 17:22:42 +0200 Subject: [PATCH 04/12] Raise version number after 5.4.1-beta build --- configure.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.in b/configure.in index 0266d43a1f4..ad341dcd3e0 100644 --- a/configure.in +++ b/configure.in @@ -10,7 +10,7 @@ AC_CANONICAL_SYSTEM # # When changing major version number please also check switch statement # in client/mysqlbinlog.cc:check_master_version(). -AM_INIT_AUTOMAKE(mysql, 5.4.1-beta) +AM_INIT_AUTOMAKE(mysql, 5.4.2-beta) AM_CONFIG_HEADER([include/config.h:config.h.in]) PROTOCOL_VERSION=10 From 9fa89007345f8bd7a5fa865b1534db5c773e1018 Mon Sep 17 00:00:00 2001 From: Mikael Ronstrom Date: Tue, 16 Jun 2009 15:16:15 +0200 Subject: [PATCH 05/12] First attempt at fixing Windows issues in 5.4.0 --- storage/innobase/CMakeLists.txt | 14 +++++++++---- storage/innobase/include/os0sync.ic | 4 ++-- storage/innobase/win_atomics32_test.c | 28 +++++++++++++------------- storage/innobase/win_atomics64_test.c | 29 ++++++++++++++------------- 4 files changed, 41 insertions(+), 34 deletions(-) diff --git a/storage/innobase/CMakeLists.txt b/storage/innobase/CMakeLists.txt index ca46e1fb145..3d2d8a0c819 100755 --- a/storage/innobase/CMakeLists.txt +++ b/storage/innobase/CMakeLists.txt @@ -25,24 +25,30 @@ IF(CMAKE_GENERATOR MATCHES "Visual Studio" AND CMAKE_SIZEOF_VOID_P MATCHES 8) PROPERTIES COMPILE_FLAGS -Od) ENDIF(CMAKE_GENERATOR MATCHES "Visual Studio" AND CMAKE_SIZEOF_VOID_P MATCHES 8) +MESSAGE("Checking for ATOMICS") IF (NOT WITHOUT_ATOMICS) # Check if this Windows version supports atomic instructions IF (CMAKE_SIZEOF_VOID_P MATCHES 8) # Check for 64 bit atomics TRY_RUN(RUN_RES COMPILE_RES ${CMAKE_BINARY_DIR} ${CMAKE_SOURCE_DIR}/storage/innobase/win_atomics64_test.c) - IF (RUN_RES) + MESSAGE("Tried Win64, Compile = ${COMPILE_RES}, Run = ${RUN_RES}") + IF (COMPILE_RES AND NOT RUN_RES) + MESSAGE("Adding support for Win64 atomics") ADD_DEFINITIONS(-DWIN_ATOMICS64) - ENDIF (RUN_RES) + ENDIF (COMPILE_RES AND NOT RUN_RES) ELSE (CMAKE_SIZEOF_VOID_P MATCHES 8) # Check for 32 bit atomics TRY_RUN(RUN_RES COMPILE_RES ${CMAKE_BINARY_DIR} ${CMAKE_SOURCE_DIR}/storage/innobase/win_atomics32_test.c) - IF (RUN_RES) + MESSAGE("Tried Win32, Compile = ${COMPILE_RES}, Run = ${RUN_RES}") + IF (COMPILE_RES AND NOT RUN_RES) + MESSAGE("Adding support for Win32 atomics") ADD_DEFINITIONS(-DWIN_ATOMICS32) - ENDIF (RUN_RES) + ENDIF (COMPILE_RES AND NOT RUN_RES) ENDIF (CMAKE_SIZEOF_VOID_P MATCHES 8) ENDIF (NOT WITHOUT_ATOMICS) +MESSAGE("End checking for ATOMICS") INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/zlib ${CMAKE_SOURCE_DIR}/storage/innobase/include diff --git a/storage/innobase/include/os0sync.ic b/storage/innobase/include/os0sync.ic index 5c1b473ad6d..d1307134172 100644 --- a/storage/innobase/include/os0sync.ic +++ b/storage/innobase/include/os0sync.ic @@ -142,9 +142,9 @@ os_atomic_increment( #elif HAVE_SOLARIS_ATOMIC return ((lint)atomic_add_long_nv((volatile ulong_t *)ptr, amount)); #elif WIN_ATOMICS32 - return ((lint)InterlockedExchangeAdd(ptr, amount)); + return ((lint)InterlockedExchangeAdd(ptr, amount) + amount); #elif WIN_ATOMICS64 - return ((lint)InterlockedExchangeAdd64(ptr, amount)); + return ((lint)InterlockedExchangeAdd64(ptr, amount) + amount); #else #error "Need support for atomic ops" #endif diff --git a/storage/innobase/win_atomics32_test.c b/storage/innobase/win_atomics32_test.c index 28b1754f6db..fcb88d6b54e 100644 --- a/storage/innobase/win_atomics32_test.c +++ b/storage/innobase/win_atomics32_test.c @@ -1,17 +1,17 @@ -# Copyright (C) 2009 Sun Microsystems AB -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; version 2 of the License. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +/* Copyright (C) 2009 Sun Microsystems AB + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ #include diff --git a/storage/innobase/win_atomics64_test.c b/storage/innobase/win_atomics64_test.c index 9114776e121..123cb6d98cf 100644 --- a/storage/innobase/win_atomics64_test.c +++ b/storage/innobase/win_atomics64_test.c @@ -1,17 +1,18 @@ -# Copyright (C) 2009 Sun Microsystems AB -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; version 2 of the License. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +/* Copyright (C) 2009 Sun Microsystems AB + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + #include int main() From c3133e17402fd985aa17bece1ddeb3cf613ad85d Mon Sep 17 00:00:00 2001 From: Mikael Ronstrom Date: Wed, 17 Jun 2009 19:16:49 +0200 Subject: [PATCH 06/12] Removed debug comments on Windows CMake fixes --- storage/innobase/CMakeLists.txt | 4 ---- 1 file changed, 4 deletions(-) diff --git a/storage/innobase/CMakeLists.txt b/storage/innobase/CMakeLists.txt index 3d2d8a0c819..8a2e1535c67 100755 --- a/storage/innobase/CMakeLists.txt +++ b/storage/innobase/CMakeLists.txt @@ -25,14 +25,12 @@ IF(CMAKE_GENERATOR MATCHES "Visual Studio" AND CMAKE_SIZEOF_VOID_P MATCHES 8) PROPERTIES COMPILE_FLAGS -Od) ENDIF(CMAKE_GENERATOR MATCHES "Visual Studio" AND CMAKE_SIZEOF_VOID_P MATCHES 8) -MESSAGE("Checking for ATOMICS") IF (NOT WITHOUT_ATOMICS) # Check if this Windows version supports atomic instructions IF (CMAKE_SIZEOF_VOID_P MATCHES 8) # Check for 64 bit atomics TRY_RUN(RUN_RES COMPILE_RES ${CMAKE_BINARY_DIR} ${CMAKE_SOURCE_DIR}/storage/innobase/win_atomics64_test.c) - MESSAGE("Tried Win64, Compile = ${COMPILE_RES}, Run = ${RUN_RES}") IF (COMPILE_RES AND NOT RUN_RES) MESSAGE("Adding support for Win64 atomics") ADD_DEFINITIONS(-DWIN_ATOMICS64) @@ -41,14 +39,12 @@ IF (NOT WITHOUT_ATOMICS) # Check for 32 bit atomics TRY_RUN(RUN_RES COMPILE_RES ${CMAKE_BINARY_DIR} ${CMAKE_SOURCE_DIR}/storage/innobase/win_atomics32_test.c) - MESSAGE("Tried Win32, Compile = ${COMPILE_RES}, Run = ${RUN_RES}") IF (COMPILE_RES AND NOT RUN_RES) MESSAGE("Adding support for Win32 atomics") ADD_DEFINITIONS(-DWIN_ATOMICS32) ENDIF (COMPILE_RES AND NOT RUN_RES) ENDIF (CMAKE_SIZEOF_VOID_P MATCHES 8) ENDIF (NOT WITHOUT_ATOMICS) -MESSAGE("End checking for ATOMICS") INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/zlib ${CMAKE_SOURCE_DIR}/storage/innobase/include From eea0ccd8773a50c94a43fcb98c6867a3a0bdce8f Mon Sep 17 00:00:00 2001 From: Mikael Ronstrom Date: Thu, 18 Jun 2009 15:16:59 +0200 Subject: [PATCH 07/12] Fixed error in commit email and push emails --- .bzr-mysql/default.conf | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.bzr-mysql/default.conf b/.bzr-mysql/default.conf index 45a6c66a4c1..39ebdda8d7a 100644 --- a/.bzr-mysql/default.conf +++ b/.bzr-mysql/default.conf @@ -1,4 +1,4 @@ [MYSQL] -post_commit_to = False #"commits@lists.mysql.com" -post_push_to = False #"commits@lists.mysql.com" -tree_name = "mysql-5.1" +post_commit_to = "commits@lists.mysql.com" +post_push_to = "commits@lists.mysql.com" +tree_name = "mysql-5.4" From 1ace32e28ecc08bfd3f6ae21a98da49893918fe3 Mon Sep 17 00:00:00 2001 From: Alexey Botchkov Date: Mon, 22 Jun 2009 17:28:15 +0500 Subject: [PATCH 08/12] test results fixed --- mysql-test/r/type_blob.result | 4 ++-- mysql-test/r/type_timestamp.result | 14 +++++++------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/mysql-test/r/type_blob.result b/mysql-test/r/type_blob.result index a80adab1f87..d11ab236c34 100644 --- a/mysql-test/r/type_blob.result +++ b/mysql-test/r/type_blob.result @@ -891,11 +891,11 @@ CREATE TABLE b15776 (a year(-2)); ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-2))' at line 1 CREATE TABLE b15776 (a timestamp(4294967294)); Warnings: -Warning 1287 The syntax 'TIMESTAMP(4294967294)' is deprecated and will be removed in MySQL 5.2. Please use 'TIMESTAMP' instead +Warning 1287 The syntax 'TIMESTAMP(4294967294)' is deprecated and will be removed in MySQL 6.0. Please use 'TIMESTAMP' instead DROP TABLE b15776; CREATE TABLE b15776 (a timestamp(4294967295)); Warnings: -Warning 1287 The syntax 'TIMESTAMP(4294967295)' is deprecated and will be removed in MySQL 5.2. Please use 'TIMESTAMP' instead +Warning 1287 The syntax 'TIMESTAMP(4294967295)' is deprecated and will be removed in MySQL 6.0. Please use 'TIMESTAMP' instead DROP TABLE b15776; CREATE TABLE b15776 (a timestamp(4294967296)); ERROR 42000: Display width out of range for column 'a' (max = 4294967295) diff --git a/mysql-test/r/type_timestamp.result b/mysql-test/r/type_timestamp.result index 91938771ee3..24cb725de9f 100644 --- a/mysql-test/r/type_timestamp.result +++ b/mysql-test/r/type_timestamp.result @@ -101,13 +101,13 @@ create table t1 (t2 timestamp(2), t4 timestamp(4), t6 timestamp(6), t8 timestamp(8), t10 timestamp(10), t12 timestamp(12), t14 timestamp(14)); Warnings: -Warning 1287 The syntax 'TIMESTAMP(2)' is deprecated and will be removed in MySQL 5.2. Please use 'TIMESTAMP' instead -Warning 1287 The syntax 'TIMESTAMP(4)' is deprecated and will be removed in MySQL 5.2. Please use 'TIMESTAMP' instead -Warning 1287 The syntax 'TIMESTAMP(6)' is deprecated and will be removed in MySQL 5.2. Please use 'TIMESTAMP' instead -Warning 1287 The syntax 'TIMESTAMP(8)' is deprecated and will be removed in MySQL 5.2. Please use 'TIMESTAMP' instead -Warning 1287 The syntax 'TIMESTAMP(10)' is deprecated and will be removed in MySQL 5.2. Please use 'TIMESTAMP' instead -Warning 1287 The syntax 'TIMESTAMP(12)' is deprecated and will be removed in MySQL 5.2. Please use 'TIMESTAMP' instead -Warning 1287 The syntax 'TIMESTAMP(14)' is deprecated and will be removed in MySQL 5.2. Please use 'TIMESTAMP' instead +Warning 1287 The syntax 'TIMESTAMP(2)' is deprecated and will be removed in MySQL 6.0. Please use 'TIMESTAMP' instead +Warning 1287 The syntax 'TIMESTAMP(4)' is deprecated and will be removed in MySQL 6.0. Please use 'TIMESTAMP' instead +Warning 1287 The syntax 'TIMESTAMP(6)' is deprecated and will be removed in MySQL 6.0. Please use 'TIMESTAMP' instead +Warning 1287 The syntax 'TIMESTAMP(8)' is deprecated and will be removed in MySQL 6.0. Please use 'TIMESTAMP' instead +Warning 1287 The syntax 'TIMESTAMP(10)' is deprecated and will be removed in MySQL 6.0. Please use 'TIMESTAMP' instead +Warning 1287 The syntax 'TIMESTAMP(12)' is deprecated and will be removed in MySQL 6.0. Please use 'TIMESTAMP' instead +Warning 1287 The syntax 'TIMESTAMP(14)' is deprecated and will be removed in MySQL 6.0. Please use 'TIMESTAMP' instead insert t1 values (0,0,0,0,0,0,0), ("1997-12-31 23:47:59", "1997-12-31 23:47:59", "1997-12-31 23:47:59", "1997-12-31 23:47:59", "1997-12-31 23:47:59", "1997-12-31 23:47:59", From 24af8a4345be2f3c0bf92bd75e1a807f25a7b47f Mon Sep 17 00:00:00 2001 From: Alexey Botchkov Date: Tue, 23 Jun 2009 09:41:24 +0500 Subject: [PATCH 09/12] Bug#44676 5.4 deprecation messages allege feature removal in lower version changed the deprecation border to 6.0 in this case per-file comments: mysql-test/r/backup.result Bug#44676 5.4 deprecation messages allege feature removal in lower version test result fixed mysql-test/r/show_check.result Bug#44676 5.4 deprecation messages allege feature removal in lower version test result fixed mysql-test/r/sp-error.result Bug#44676 5.4 deprecation messages allege feature removal in lower version test result fixed mysql-test/r/sp.result Bug#44676 5.4 deprecation messages allege feature removal in lower version test result fixed mysql-test/r/sp_trans.result Bug#44676 5.4 deprecation messages allege feature removal in lower version test result fixed mysql-test/r/warnings.result Bug#44676 5.4 deprecation messages allege feature removal in lower version test result fixed mysql-test/suite/rpl/r/rpl_sp.result Bug#44676 5.4 deprecation messages allege feature removal in lower version test result fixed sql/mysqld.cc Bug#44676 5.4 deprecation messages allege feature removal in lower version sql/set_var.cc Bug#44676 5.4 deprecation messages allege feature removal in lower version sql/sql_table.cc Bug#44676 5.4 deprecation messages allege feature removal in lower version sql/sql_yacc.yy Bug#44676 5.4 deprecation messages allege feature removal in lower version --- mysql-test/r/backup.result | 26 +++++++++++++------------- mysql-test/r/show_check.result | 2 +- mysql-test/r/sp-error.result | 2 +- mysql-test/r/sp.result | 4 ++-- mysql-test/r/sp_trans.result | 2 +- mysql-test/r/warnings.result | 2 +- mysql-test/suite/rpl/r/rpl_sp.result | 6 +++--- sql/mysqld.cc | 2 +- sql/set_var.cc | 4 ++-- sql/sql_table.cc | 4 ++-- sql/sql_yacc.yy | 14 +++++++------- 11 files changed, 34 insertions(+), 34 deletions(-) diff --git a/mysql-test/r/backup.result b/mysql-test/r/backup.result index b657c620805..bab2c83448c 100644 --- a/mysql-test/r/backup.result +++ b/mysql-test/r/backup.result @@ -4,23 +4,23 @@ create table t4(n int); backup table t4 to '../../bogus'; Table Op Msg_type Msg_text test.t4 backup error Failed copying .frm file (errno: X) -test.t4 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead +test.t4 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead test.t4 backup Error Can't create/write to file 'MYSQLTEST_VARDIR/bogus/t4.frm' (Errcode: X) test.t4 backup status Operation failed backup table t4 to '../../tmp'; Table Op Msg_type Msg_text -test.t4 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead +test.t4 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead test.t4 backup status OK backup table t4 to '../../tmp'; Table Op Msg_type Msg_text test.t4 backup error Failed copying .frm file (errno: X) -test.t4 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead +test.t4 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead test.t4 backup Error Can't create/write to file 'MYSQLTEST_VARDIR/tmp/t4.frm' (Errcode: X) test.t4 backup status Operation failed drop table t4; restore table t4 from '../../tmp'; Table Op Msg_type Msg_text -test.t4 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead +test.t4 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead test.t4 restore status OK select count(*) from t4; count(*) @@ -29,18 +29,18 @@ create table t1(n int); insert into t1 values (23),(45),(67); backup table t1 to '../../tmp'; Table Op Msg_type Msg_text -test.t1 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead +test.t1 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead test.t1 backup status OK drop table t1; restore table t1 from '../../bogus'; Table Op Msg_type Msg_text t1 restore error Failed copying .frm file Warnings: -Warning 1287 The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead +Warning 1287 The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead Error 29 File 'MYSQLTEST_VARDIR/bogus/t1.frm' not found (Errcode: X) restore table t1 from '../../tmp'; Table Op Msg_type Msg_text -test.t1 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead +test.t1 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead test.t1 restore status OK select n from t1; n @@ -53,13 +53,13 @@ insert into t2 values (123),(145),(167); insert into t3 values (223),(245),(267); backup table t2,t3 to '../../tmp'; Table Op Msg_type Msg_text -test.t2 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead +test.t2 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead test.t2 backup status OK test.t3 backup status OK drop table t1,t2,t3; restore table t1,t2,t3 from '../../tmp'; Table Op Msg_type Msg_text -test.t1 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead +test.t1 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead test.t1 restore status OK test.t2 restore status OK test.t3 restore status OK @@ -81,14 +81,14 @@ k drop table t1,t2,t3,t4; restore table t1 from '../../tmp'; Table Op Msg_type Msg_text -test.t1 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead +test.t1 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead test.t1 restore status OK rename table t1 to t5; lock tables t5 write; backup table t5 to '../../tmp'; unlock tables; Table Op Msg_type Msg_text -test.t5 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead +test.t5 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead test.t5 backup status OK drop table t5; DROP TABLE IF EXISTS `t+1`; @@ -96,12 +96,12 @@ CREATE TABLE `t+1` (c1 INT); INSERT INTO `t+1` VALUES (1), (2), (3); BACKUP TABLE `t+1` TO '../../tmp'; Table Op Msg_type Msg_text -test.t+1 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead +test.t+1 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead test.t+1 backup status OK DROP TABLE `t+1`; RESTORE TABLE `t+1` FROM '../../tmp'; Table Op Msg_type Msg_text -test.t+1 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead +test.t+1 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead test.t+1 restore status OK SELECT * FROM `t+1`; c1 diff --git a/mysql-test/r/show_check.result b/mysql-test/r/show_check.result index 2051939e4b6..c8ea9d79a13 100644 --- a/mysql-test/r/show_check.result +++ b/mysql-test/r/show_check.result @@ -1295,7 +1295,7 @@ drop database mysqltest; show full plugin; show warnings; Level Code Message -Warning 1287 The syntax 'SHOW PLUGIN' is deprecated and will be removed in MySQL 5.2. Please use 'SHOW PLUGINS' instead +Warning 1287 The syntax 'SHOW PLUGIN' is deprecated and will be removed in MySQL 6.0. Please use 'SHOW PLUGINS' instead show plugin; show plugins; create database `mysqlttest\1`; diff --git a/mysql-test/r/sp-error.result b/mysql-test/r/sp-error.result index 3def6536897..35d61ce757d 100644 --- a/mysql-test/r/sp-error.result +++ b/mysql-test/r/sp-error.result @@ -1643,7 +1643,7 @@ create table t1 (a int) type=MyISAM; drop table t1; end| Warnings: -Warning 1287 The syntax 'TYPE=storage_engine' is deprecated and will be removed in MySQL 5.2. Please use 'ENGINE=storage_engine' instead +Warning 1287 The syntax 'TYPE=storage_engine' is deprecated and will be removed in MySQL 6.0. Please use 'ENGINE=storage_engine' instead call p1(); call p1(); drop procedure p1; diff --git a/mysql-test/r/sp.result b/mysql-test/r/sp.result index 01ddde56450..881eed4dbf7 100644 --- a/mysql-test/r/sp.result +++ b/mysql-test/r/sp.result @@ -4350,10 +4350,10 @@ call bug13012()| Table Op Msg_type Msg_text test.t1 repair status OK Table Op Msg_type Msg_text -test.t1 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead +test.t1 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead test.t1 backup status OK Table Op Msg_type Msg_text -test.t1 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead +test.t1 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead test.t1 restore status OK drop procedure bug13012| create view v1 as select * from t1| diff --git a/mysql-test/r/sp_trans.result b/mysql-test/r/sp_trans.result index abd454ac907..3cc251bc0a6 100644 --- a/mysql-test/r/sp_trans.result +++ b/mysql-test/r/sp_trans.result @@ -535,7 +535,7 @@ use db_bug7787| CREATE PROCEDURE p1() SHOW INNODB STATUS; | Warnings: -Warning 1287 The syntax 'SHOW INNODB STATUS' is deprecated and will be removed in MySQL 5.2. Please use 'SHOW ENGINE INNODB STATUS' instead +Warning 1287 The syntax 'SHOW INNODB STATUS' is deprecated and will be removed in MySQL 6.0. Please use 'SHOW ENGINE INNODB STATUS' instead GRANT EXECUTE ON PROCEDURE p1 TO user_bug7787@localhost| DROP DATABASE db_bug7787| drop user user_bug7787@localhost| diff --git a/mysql-test/r/warnings.result b/mysql-test/r/warnings.result index 19d95acd5c1..2e393aea9e4 100644 --- a/mysql-test/r/warnings.result +++ b/mysql-test/r/warnings.result @@ -168,7 +168,7 @@ max_error_count 10 drop table t1; set table_type=MYISAM; Warnings: -Warning 1287 The syntax '@@table_type' is deprecated and will be removed in MySQL 5.2. Please use '@@storage_engine' instead +Warning 1287 The syntax '@@table_type' is deprecated and will be removed in MySQL 6.0. Please use '@@storage_engine' instead create table t1 (a int); insert into t1 (a) values (1), (2), (3), (4), (5), (6), (7), (8), (9), (10); update t1 set a='abc'; diff --git a/mysql-test/suite/rpl/r/rpl_sp.result b/mysql-test/suite/rpl/r/rpl_sp.result index 4a8a4050c02..ba898bc9dbc 100644 --- a/mysql-test/suite/rpl/r/rpl_sp.result +++ b/mysql-test/suite/rpl/r/rpl_sp.result @@ -195,7 +195,7 @@ set @old_log_bin_trust_routine_creators= @@global.log_bin_trust_routine_creators set @old_log_bin_trust_function_creators= @@global.log_bin_trust_function_creators; set global log_bin_trust_routine_creators=1; Warnings: -Warning 1287 The syntax '@@log_bin_trust_routine_creators' is deprecated and will be removed in MySQL 5.2. Please use '@@log_bin_trust_function_creators' instead +Warning 1287 The syntax '@@log_bin_trust_routine_creators' is deprecated and will be removed in MySQL 6.0. Please use '@@log_bin_trust_function_creators' instead set global log_bin_trust_function_creators=0; set global log_bin_trust_function_creators=1; set @old_log_bin_trust_routine_creators= @@global.log_bin_trust_routine_creators; @@ -555,11 +555,11 @@ end master-bin.000001 # Query 1 # use `mysqltest`; SELECT `mysqltest2`.`f1`() set @@global.log_bin_trust_routine_creators= @old_log_bin_trust_routine_creators; Warnings: -Warning 1287 The syntax '@@log_bin_trust_routine_creators' is deprecated and will be removed in MySQL 5.2. Please use '@@log_bin_trust_function_creators' instead +Warning 1287 The syntax '@@log_bin_trust_routine_creators' is deprecated and will be removed in MySQL 6.0. Please use '@@log_bin_trust_function_creators' instead set @@global.log_bin_trust_function_creators= @old_log_bin_trust_function_creators; set @@global.log_bin_trust_routine_creators= @old_log_bin_trust_routine_creators; Warnings: -Warning 1287 The syntax '@@log_bin_trust_routine_creators' is deprecated and will be removed in MySQL 5.2. Please use '@@log_bin_trust_function_creators' instead +Warning 1287 The syntax '@@log_bin_trust_routine_creators' is deprecated and will be removed in MySQL 6.0. Please use '@@log_bin_trust_function_creators' instead set @@global.log_bin_trust_function_creators= @old_log_bin_trust_function_creators; drop database mysqltest; drop database mysqltest2; diff --git a/sql/mysqld.cc b/sql/mysqld.cc index 01d64358d30..209e40d5f06 100644 --- a/sql/mysqld.cc +++ b/sql/mysqld.cc @@ -8136,7 +8136,7 @@ mysqld_get_one_option(int optid, if (!slave_warning_issued) //only show the warning once { slave_warning_issued = true; - WARN_DEPRECATED(NULL, "5.2", "for replication startup options", + WARN_DEPRECATED(NULL, "6.0", "for replication startup options", "'CHANGE MASTER'"); } break; diff --git a/sql/set_var.cc b/sql/set_var.cc index f14068fcfcb..7e2efd2d580 100644 --- a/sql/set_var.cc +++ b/sql/set_var.cc @@ -3682,7 +3682,7 @@ bool sys_var_thd_storage_engine::update(THD *thd, set_var *var) void sys_var_thd_table_type::warn_deprecated(THD *thd) { - WARN_DEPRECATED(thd, "5.2", "@@table_type", "'@@storage_engine'"); + WARN_DEPRECATED(thd, "6.0", "@@table_type", "'@@storage_engine'"); } void sys_var_thd_table_type::set_default(THD *thd, enum_var_type type) @@ -3944,7 +3944,7 @@ bool process_key_caches(process_key_cache_t func) void sys_var_trust_routine_creators::warn_deprecated(THD *thd) { - WARN_DEPRECATED(thd, "5.2", "@@log_bin_trust_routine_creators", + WARN_DEPRECATED(thd, "6.0", "@@log_bin_trust_routine_creators", "'@@log_bin_trust_function_creators'"); } diff --git a/sql/sql_table.cc b/sql/sql_table.cc index aa2a5739f17..f0059e7a95b 100644 --- a/sql/sql_table.cc +++ b/sql/sql_table.cc @@ -4639,7 +4639,7 @@ err: bool mysql_backup_table(THD* thd, TABLE_LIST* table_list) { DBUG_ENTER("mysql_backup_table"); - WARN_DEPRECATED(thd, "5.2", "BACKUP TABLE", + WARN_DEPRECATED(thd, "6.0", "BACKUP TABLE", "MySQL Administrator (mysqldump, mysql)"); DBUG_RETURN(mysql_admin_table(thd, table_list, 0, "backup", TL_READ, 0, 0, 0, 0, @@ -4650,7 +4650,7 @@ bool mysql_backup_table(THD* thd, TABLE_LIST* table_list) bool mysql_restore_table(THD* thd, TABLE_LIST* table_list) { DBUG_ENTER("mysql_restore_table"); - WARN_DEPRECATED(thd, "5.2", "RESTORE TABLE", + WARN_DEPRECATED(thd, "6.0", "RESTORE TABLE", "MySQL Administrator (mysqldump, mysql)"); DBUG_RETURN(mysql_admin_table(thd, table_list, 0, "restore", TL_WRITE, 1, 1, 0, diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy index 7df035bbfc3..d40fe4c29eb 100644 --- a/sql/sql_yacc.yy +++ b/sql/sql_yacc.yy @@ -4392,7 +4392,7 @@ create_table_option: | TYPE_SYM opt_equal storage_engines { Lex->create_info.db_type= $3; - WARN_DEPRECATED(yythd, "5.2", "TYPE=storage_engine", + WARN_DEPRECATED(yythd, "6.0", "TYPE=storage_engine", "'ENGINE=storage_engine'"); Lex->create_info.used_fields|= HA_CREATE_USED_ENGINE; } @@ -9869,7 +9869,7 @@ show_param: | opt_full PLUGIN_SYM { LEX *lex= Lex; - WARN_DEPRECATED(yythd, "5.2", "SHOW PLUGIN", "'SHOW PLUGINS'"); + WARN_DEPRECATED(yythd, "6.0", "SHOW PLUGIN", "'SHOW PLUGINS'"); lex->sql_command= SQLCOM_SHOW_PLUGINS; if (prepare_schema_table(YYTHD, lex, 0, SCH_PLUGINS)) MYSQL_YYABORT; @@ -9938,7 +9938,7 @@ show_param: { LEX *lex=Lex; lex->sql_command= SQLCOM_SHOW_STORAGE_ENGINES; - WARN_DEPRECATED(yythd, "5.2", "SHOW TABLE TYPES", "'SHOW [STORAGE] ENGINES'"); + WARN_DEPRECATED(yythd, "6.0", "SHOW TABLE TYPES", "'SHOW [STORAGE] ENGINES'"); if (prepare_schema_table(YYTHD, lex, 0, SCH_ENGINES)) MYSQL_YYABORT; } @@ -9999,7 +9999,7 @@ show_param: my_error(ER_UNKNOWN_STORAGE_ENGINE, MYF(0), "InnoDB"); MYSQL_YYABORT; } - WARN_DEPRECATED(yythd, "5.2", "SHOW INNODB STATUS", "'SHOW ENGINE INNODB STATUS'"); + WARN_DEPRECATED(yythd, "6.0", "SHOW INNODB STATUS", "'SHOW ENGINE INNODB STATUS'"); } | MUTEX_SYM STATUS_SYM { @@ -10011,7 +10011,7 @@ show_param: my_error(ER_UNKNOWN_STORAGE_ENGINE, MYF(0), "InnoDB"); MYSQL_YYABORT; } - WARN_DEPRECATED(yythd, "5.2", "SHOW MUTEX STATUS", "'SHOW ENGINE INNODB MUTEX'"); + WARN_DEPRECATED(yythd, "6.0", "SHOW MUTEX STATUS", "'SHOW ENGINE INNODB MUTEX'"); } | opt_full PROCESSLIST_SYM { Lex->sql_command= SQLCOM_SHOW_PROCESSLIST;} @@ -10406,7 +10406,7 @@ load: | LOAD TABLE_SYM table_ident FROM MASTER_SYM { LEX *lex=Lex; - WARN_DEPRECATED(yythd, "5.2", "LOAD TABLE FROM MASTER", + WARN_DEPRECATED(yythd, "6.0", "LOAD TABLE FROM MASTER", "MySQL Administrator (mysqldump, mysql)"); if (lex->sphead) { @@ -10453,7 +10453,7 @@ load_data: | FROM MASTER_SYM { Lex->sql_command = SQLCOM_LOAD_MASTER_DATA; - WARN_DEPRECATED(yythd, "5.2", "LOAD DATA FROM MASTER", + WARN_DEPRECATED(yythd, "6.0", "LOAD DATA FROM MASTER", "mysqldump or future " "BACKUP/RESTORE DATABASE facility"); } From 8c6811c1e01201eff6566265d15ca9db2c9659e5 Mon Sep 17 00:00:00 2001 From: MySQL Build Team Date: Wed, 24 Jun 2009 01:24:20 +0200 Subject: [PATCH 10/12] TEMPORARY drop of version number, only in 5.4.1-release branch --- configure.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.in b/configure.in index ad341dcd3e0..0266d43a1f4 100644 --- a/configure.in +++ b/configure.in @@ -10,7 +10,7 @@ AC_CANONICAL_SYSTEM # # When changing major version number please also check switch statement # in client/mysqlbinlog.cc:check_master_version(). -AM_INIT_AUTOMAKE(mysql, 5.4.2-beta) +AM_INIT_AUTOMAKE(mysql, 5.4.1-beta) AM_CONFIG_HEADER([include/config.h:config.h.in]) PROTOCOL_VERSION=10 From eed527adc949de7ccb9016ea81d4ffc9c279df79 Mon Sep 17 00:00:00 2001 From: MySQL Build Team Date: Thu, 25 Jun 2009 22:09:25 +0200 Subject: [PATCH 11/12] Un-drop version number after fiddling with mysql-5.4.1-release branch --- configure.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.in b/configure.in index 0266d43a1f4..ad341dcd3e0 100644 --- a/configure.in +++ b/configure.in @@ -10,7 +10,7 @@ AC_CANONICAL_SYSTEM # # When changing major version number please also check switch statement # in client/mysqlbinlog.cc:check_master_version(). -AM_INIT_AUTOMAKE(mysql, 5.4.1-beta) +AM_INIT_AUTOMAKE(mysql, 5.4.2-beta) AM_CONFIG_HEADER([include/config.h:config.h.in]) PROTOCOL_VERSION=10 From bd4b896a360c5562af541b9fff272297ccbe5dcb Mon Sep 17 00:00:00 2001 From: Mikael Ronstrom Date: Wed, 1 Jul 2009 14:25:30 +0200 Subject: [PATCH 12/12] Preparation for using CMake for more than Windows by only checking for WIN_ATOMICS32/64 on Windows --- storage/innobase/CMakeLists.txt | 37 +++++++++++++++++---------------- 1 file changed, 19 insertions(+), 18 deletions(-) diff --git a/storage/innobase/CMakeLists.txt b/storage/innobase/CMakeLists.txt index 8a2e1535c67..249a600834d 100755 --- a/storage/innobase/CMakeLists.txt +++ b/storage/innobase/CMakeLists.txt @@ -25,27 +25,28 @@ IF(CMAKE_GENERATOR MATCHES "Visual Studio" AND CMAKE_SIZEOF_VOID_P MATCHES 8) PROPERTIES COMPILE_FLAGS -Od) ENDIF(CMAKE_GENERATOR MATCHES "Visual Studio" AND CMAKE_SIZEOF_VOID_P MATCHES 8) -IF (NOT WITHOUT_ATOMICS) +IF (WIN32) + IF (NOT WITHOUT_ATOMICS) # Check if this Windows version supports atomic instructions - IF (CMAKE_SIZEOF_VOID_P MATCHES 8) + IF (CMAKE_SIZEOF_VOID_P MATCHES 8) # Check for 64 bit atomics - TRY_RUN(RUN_RES COMPILE_RES ${CMAKE_BINARY_DIR} - ${CMAKE_SOURCE_DIR}/storage/innobase/win_atomics64_test.c) - IF (COMPILE_RES AND NOT RUN_RES) - MESSAGE("Adding support for Win64 atomics") - ADD_DEFINITIONS(-DWIN_ATOMICS64) - ENDIF (COMPILE_RES AND NOT RUN_RES) - ELSE (CMAKE_SIZEOF_VOID_P MATCHES 8) + TRY_RUN(RUN_RES COMPILE_RES ${CMAKE_BINARY_DIR} + ${CMAKE_SOURCE_DIR}/storage/innobase/win_atomics64_test.c) + IF (COMPILE_RES AND NOT RUN_RES) + MESSAGE("Adding support for Win64 atomics") + ADD_DEFINITIONS(-DWIN_ATOMICS64) + ENDIF (COMPILE_RES AND NOT RUN_RES) + ELSE (CMAKE_SIZEOF_VOID_P MATCHES 8) # Check for 32 bit atomics - TRY_RUN(RUN_RES COMPILE_RES ${CMAKE_BINARY_DIR} - ${CMAKE_SOURCE_DIR}/storage/innobase/win_atomics32_test.c) - IF (COMPILE_RES AND NOT RUN_RES) - MESSAGE("Adding support for Win32 atomics") - ADD_DEFINITIONS(-DWIN_ATOMICS32) - ENDIF (COMPILE_RES AND NOT RUN_RES) - ENDIF (CMAKE_SIZEOF_VOID_P MATCHES 8) -ENDIF (NOT WITHOUT_ATOMICS) - + TRY_RUN(RUN_RES COMPILE_RES ${CMAKE_BINARY_DIR} + ${CMAKE_SOURCE_DIR}/storage/innobase/win_atomics32_test.c) + IF (COMPILE_RES AND NOT RUN_RES) + MESSAGE("Adding support for Win32 atomics") + ADD_DEFINITIONS(-DWIN_ATOMICS32) + ENDIF (COMPILE_RES AND NOT RUN_RES) + ENDIF (CMAKE_SIZEOF_VOID_P MATCHES 8) + ENDIF (NOT WITHOUT_ATOMICS) +ENDIF (WIN32) INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/zlib ${CMAKE_SOURCE_DIR}/storage/innobase/include ${CMAKE_SOURCE_DIR}/storage/innobase/handler