Commit 02366c57 authored by Mikael Ronstrom's avatar Mikael Ronstrom

Merged in 5.1.35

parents f25104c5 f2b47a87
[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"
......@@ -9,8 +9,8 @@ AC_CANONICAL_SYSTEM
# remember to also update version.c in ndb
#
# When changing major version number please also check switch statement
# in mysqlbinlog::check_master_version().
AM_INIT_AUTOMAKE(mysql, 5.4.1-beta)
# in client/mysqlbinlog.cc:check_master_version().
AM_INIT_AUTOMAKE(mysql, 5.4.2-beta)
AM_CONFIG_HEADER([include/config.h:config.h.in])
PROTOCOL_VERSION=10
......
......@@ -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.%
......@@ -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 (<DTRACE>) {
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 = <D>;
close(D);
while (1) {
my $nl = 0;
......
......@@ -25,25 +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 (RUN_RES)
ADD_DEFINITIONS(-DWIN_ATOMICS64)
ENDIF (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 (RUN_RES)
ADD_DEFINITIONS(-DWIN_ATOMICS32)
ENDIF (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
......
......@@ -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
......
......@@ -428,28 +428,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;
/*
......
# 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 <windows.h>
......
# 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 <windows.h>
int main()
......
......@@ -385,9 +385,10 @@ innodb_data_file_path = ibdata1:10M:autoextend
#innodb_data_home_dir = <directory>
# 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
......
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