@@ -, +, @@ --- 0000_index.txt | 110 ++- ... 1200_all_show_patches-percona-5.0.77-b13.patch | 0 ...1_all_microslow_innodb-percona-5.0.77-b13.patch | 308 +++--- ...=> 1202_all_userstatv2-percona-5.0.77-b13.patch | 1158 ++++++++++---------- ...3_all_microsec_process-percona-5.0.77-b13.patch | 0 ..._all_innodb_io_patches-percona-5.0.77-b13.patch | 0 ...1205_all_mirror_binlog-percona-5.0.77-b13.patch | 0 ...all_mysqld_safe_syslog-percona-5.0.77-b13.patch | 0 ..._all_innodb_locks_held-percona-5.0.77-b13.patch | 76 +- ...208_all_innodb_show_bp-percona-5.0.77-b13.patch | 0 ...odb_show_hashed_memory-percona-5.0.77-b13.patch | 0 ...db_check_fragmentation-percona-5.0.77-b13.patch | 0 ..._all_innodb_io_pattern-percona-5.0.77-b13.patch | 150 ++-- ...ll_innodb_fsync_source-percona-5.0.77-b13.patch | 0 ..._fixed_optimistic_safe-percona-5.0.77-b13.patch | 103 +- ...214_all_innodb_rw_lock-percona-5.0.77-b13.patch | 57 +- ...innodb_dict_size_limit-percona-5.0.77-b13.patch | 477 ++++++++ 17 files changed, 1498 insertions(+), 941 deletions(-) copy 1001_all_show_patches-percona-5.0.75-b12.patch => 1200_all_show_patches-percona-5.0.77-b13.patch (100%) copy 1002_all_microslow_innodb-percona-5.0.75-b12.patch => 1201_all_microslow_innodb-percona-5.0.77-b13.patch (92%) copy 1003_all_userstatv2-percona-5.0.75-b12.patch => 1202_all_userstatv2-percona-5.0.77-b13.patch (79%) copy 1004_all_microsec_process-percona-5.0.75-b12.patch => 1203_all_microsec_process-percona-5.0.77-b13.patch (100%) copy 1005_all_innodb_io_patches-percona-5.0.75-b12.patch => 1204_all_innodb_io_patches-percona-5.0.77-b13.patch (100%) copy 1006_all_mirror_binlog-percona-5.0.75-b12.patch => 1205_all_mirror_binlog-percona-5.0.77-b13.patch (100%) copy 1007_all_mysqld_safe_syslog-percona-5.0.75-b12.patch => 1206_all_mysqld_safe_syslog-percona-5.0.77-b13.patch (100%) copy 1008_all_innodb_locks_held-percona-5.0.75-b12.patch => 1207_all_innodb_locks_held-percona-5.0.77-b13.patch (80%) copy 1009_all_innodb_show_bp-percona-5.0.75-b12.patch => 1208_all_innodb_show_bp-percona-5.0.77-b13.patch (100%) copy 1010_all_innodb_show_hashed_memory-percona-5.0.75-b12.patch => 1209_all_innodb_show_hashed_memory-percona-5.0.77-b13.patch (100%) copy 1011_all_innodb_check_fragmentation-percona-5.0.75-b12.patch => 1210_all_innodb_check_fragmentation-percona-5.0.77-b13.patch (100%) copy 1012_all_innodb_io_pattern-percona-5.0.75-b12.patch => 1211_all_innodb_io_pattern-percona-5.0.77-b13.patch (85%) copy 1013_all_innodb_fsync_source-percona-5.0.75-b12.patch => 1212_all_innodb_fsync_source-percona-5.0.77-b13.patch (100%) copy 1100_all_split_buf_pool_mutex_fixed_optimistic_safe-percona-5.0.75-b12.patch => 1213_all_split_buf_pool_mutex_fixed_optimistic_safe-percona-5.0.77-b13.patch (92%) copy 1101_all_innodb_rw_lock-percona-5.0.75-b12.patch => 1214_all_innodb_rw_lock-percona-5.0.77-b13.patch (96%) create mode 100644 1215_all_innodb_dict_size_limit-percona-5.0.77-b13.patch --- a/0000_index.txt +++ a/0000_index.txt @@ -479,78 +479,158 @@ @@ Prevent SIGBUS on Sparc with NDB @patch 1001_all_show_patches-percona-5.0.75-b12.patch -@ver 5.00.75.00 to 5.00.99.99 +@ver 5.00.75.00 to 5.00.75.99 @pn mysql-community @@ Percona 5.0.75-b12: Patch listing in build data @patch 1002_all_microslow_innodb-percona-5.0.75-b12.patch -@ver 5.00.75.00 to 5.00.99.99 +@ver 5.00.75.00 to 5.00.75.99 @pn mysql-community @@ Percona 5.0.75-b12: Extended statistics in slow.log @patch 1003_all_userstatv2-percona-5.0.75-b12.patch -@ver 5.00.75.00 to 5.00.99.99 +@ver 5.00.75.00 to 5.00.75.99 @pn mysql-community @@ Percona 5.0.75-b12: SHOW USER/TABLE/INDEX statistics # Respin? @patch 1004_all_microsec_process-percona-5.0.75-b12.patch -@ver 5.00.75.00 to 5.00.99.99 +@ver 5.00.75.00 to 5.00.75.99 @pn mysql-community @@ Percona 5.0.75-b12: Adds INFOMATION_SCHEMA.PROCESSLIST with TIME_MS column @patch 1005_all_innodb_io_patches-percona-5.0.75-b12.patch -@ver 5.00.75.00 to 5.00.99.99 +@ver 5.00.75.00 to 5.00.75.99 @pn mysql-community @@ Percona 5.0.75-b12: Cluster of past InnoDB IO patches # Disabled, broken. #@patch 1006_all_mirror_binlog-percona-5.0.75-b12.patch -#@ver 5.00.75.00 to 5.00.99.99 +#@ver 5.00.75.00 to 5.00.75.99 #@pn mysql-community #@@ Percona 5.0.75-b12: Mirroring binary logs on slave @patch 1007_all_mysqld_safe_syslog-percona-5.0.75-b12.patch -@ver 5.00.75.00 to 5.00.99.99 +@ver 5.00.75.00 to 5.00.75.99 @pn mysql-community @@ Percona 5.0.75-b12: allows redirect output of error.log to syslog-ng @patch 1008_all_innodb_locks_held-percona-5.0.75-b12.patch -@ver 5.00.75.00 to 5.00.99.99 +@ver 5.00.75.00 to 5.00.75.99 @pn mysql-community @@ Percona 5.0.75-b12: Add locks held, remove locked records in SHOW INNODB STATUS @patch 1009_all_innodb_show_bp-percona-5.0.75-b12.patch -@ver 5.00.75.00 to 5.00.99.99 +@ver 5.00.75.00 to 5.00.75.99 @pn mysql-community @@ Percona 5.0.75-b12: show innodb buffer pool content @patch 1010_all_innodb_show_hashed_memory-percona-5.0.75-b12.patch -@ver 5.00.75.00 to 5.00.99.99 +@ver 5.00.75.00 to 5.00.75.99 @pn mysql-community @@ Percona 5.0.75-b12: Adds additional information of InnoDB internal hash table memories in SHOW INNODB STATUS @patch 1011_all_innodb_check_fragmentation-percona-5.0.75-b12.patch -@ver 5.00.75.00 to 5.00.99.99 +@ver 5.00.75.00 to 5.00.75.99 @pn mysql-community @@ Percona 5.0.75-b12: Session status to check fragmentation of the last InnoDB scan @patch 1012_all_innodb_io_pattern-percona-5.0.75-b12.patch -@ver 5.00.75.00 to 5.00.99.99 +@ver 5.00.75.00 to 5.00.75.99 @pn mysql-community @@ Percona 5.0.75-b12: Information schema table of InnoDB IO counts for each datafile pages @patch 1013_all_innodb_fsync_source-percona-5.0.75-b12.patch -@ver 5.00.75.00 to 5.00.99.99 +@ver 5.00.75.00 to 5.00.75.99 @pn mysql-community @@ Percona 5.0.75-b12: Information of fsync callers in InnoDB @patch 1100_all_split_buf_pool_mutex_fixed_optimistic_safe-percona-5.0.75-b12.patch -@ver 5.00.75.00 to 5.00.99.99 +@ver 5.00.75.00 to 5.00.75.99 @pn mysql-community @@ Percona 5.0.75-b12: InnoDB patch to fix buffer pool scalability @patch 1101_all_innodb_rw_lock-percona-5.0.75-b12.patch -@ver 5.00.75.00 to 5.00.99.99 +@ver 5.00.75.00 to 5.00.75.99 @pn mysql-community @@ Percona 5.0.75-b12: Fix of InnoDB rw_locks + +@patch 1200_all_show_patches-percona-5.0.77-b13.patch +@ver 5.0.77.00 to 5.00.77.99 +@pn mysql-community +@@ Percona 5.0.77-b13: Patch listing in build data + +@patch 1201_all_microslow_innodb-percona-5.0.77-b13.patch +@ver 5.0.77.00 to 5.00.77.99 +@pn mysql-community +@@ Percona 5.0.77-b13: Extended statistics in slow.log + +@patch 1202_all_userstatv2-percona-5.0.77-b13.patch +@ver 5.0.77.00 to 5.00.77.99 +@pn mysql-community +@@ Percona 5.0.77-b13: SHOW USER/TABLE/INDEX statistics + +@patch 1203_all_microsec_process-percona-5.0.77-b13.patch +@ver 5.0.77.00 to 5.00.77.99 +@pn mysql-community +@@ Percona 5.0.77-b13: Adds INFOMATION_SCHEMA.PROCESSLIST with TIME_MS column + +@patch 1204_all_innodb_io_patches-percona-5.0.77-b13.patch +@ver 5.0.77.00 to 5.00.77.99 +@pn mysql-community +@@ Percona 5.0.77-b13: Cluster of past InnoDB IO patches + +@patch 1205_all_mirror_binlog-percona-5.0.77-b13.patch +@ver 5.0.77.00 to 5.00.77.99 +@pn mysql-community +@@ Percona 5.0.77-b13: Mirroring binary logs on slave + +@patch 1206_all_mysqld_safe_syslog-percona-5.0.77-b13.patch +@ver 5.0.77.00 to 5.00.77.99 +@pn mysql-community +@@ Percona 5.0.77-b13: allows redirect output of error.log to syslog-ng + +@patch 1207_all_innodb_locks_held-percona-5.0.77-b13.patch +@ver 5.0.77.00 to 5.00.77.99 +@pn mysql-community +@@ Percona 5.0.77-b13: Add locks held, remove locked records in SHOW INNODB STATUS + +@patch 1208_all_innodb_show_bp-percona-5.0.77-b13.patch +@ver 5.0.77.00 to 5.00.77.99 +@pn mysql-community +@@ Percona 5.0.77-b13: show innodb buffer pool content + +@patch 1209_all_innodb_show_hashed_memory-percona-5.0.77-b13.patch +@ver 5.0.77.00 to 5.00.77.99 +@pn mysql-community +@@ Percona 5.0.77-b13: Adds additional information of InnoDB internal hash table memories in SHOW INNODB STATUS + +@patch 1210_all_innodb_check_fragmentation-percona-5.0.77-b13.patch +@ver 5.0.77.00 to 5.00.77.99 +@pn mysql-community +@@ Percona 5.0.77-b13: Session status to check fragmentation of the last InnoDB scan + +@patch 1211_all_innodb_io_pattern-percona-5.0.77-b13.patch +@ver 5.0.77.00 to 5.00.77.99 +@pn mysql-community +@@ Percona 5.0.77-b13: Information schema table of InnoDB IO counts for each datafile pages + +@patch 1212_all_innodb_fsync_source-percona-5.0.77-b13.patch +@ver 5.0.77.00 to 5.00.77.99 +@pn mysql-community +@@ Percona 5.0.77-b13: Information of fsync callers in InnoDB + +@patch 1213_all_split_buf_pool_mutex_fixed_optimistic_safe-percona-5.0.77-b13.patch +@ver 5.0.77.00 to 5.00.77.99 +@pn mysql-community +@@ Percona 5.0.77-b13: InnoDB patch to fix buffer pool scalability + +@patch 1214_all_innodb_rw_lock-percona-5.0.77-b13.patch +@ver 5.0.77.00 to 5.00.77.99 +@pn mysql-community +@@ Percona 5.0.77-b13: Fix of InnoDB rw_locks + +@patch 1215_all_innodb_dict_size_limit-percona-5.0.77-b13.patch +@ver 5.0.77.00 to 5.00.77.99 +@pn mysql-community +@@ Percona 5.0.77-b13: Fix of InnoDB dict size limit --- a/1002_all_microslow_innodb-percona-5.0.75-b12.patch +++ a/1002_all_microslow_innodb-percona-5.0.75-b12.patch @@ -1,6 +1,6 @@ -diff -r 25523be1816e include/my_getopt.h --- - a/include/my_getopt.h Mon Dec 22 00:25:06 2008 -0800 +++ - a/include/my_getopt.h Tue Feb 17 22:33:00 2009 -0800 @@ -11,9 +11,9 @@ diff -r 25523be1816e include/my_getopt.h #define GET_ASK_ADDR 128 #define GET_TYPE_MASK 127 -diff -r 25523be1816e include/my_time.h --- - a/include/my_time.h Mon Dec 22 00:25:06 2008 -0800 +++ - a/include/my_time.h Tue Feb 17 22:33:00 2009 -0800 @@ -23,9 +23,9 @@ diff -r 25523be1816e include/my_time.h C_MODE_END #endif /* _my_time_h_ */ -diff -r 25523be1816e innobase/buf/buf0buf.c --- - a/innobase/buf/buf0buf.c Mon Dec 22 00:25:06 2008 -0800 +++ - a/innobase/buf/buf0buf.c Tue Feb 17 22:33:00 2009 -0800 @@ -196,9 +196,9 @@ diff -r 25523be1816e innobase/buf/buf0buf.c return(TRUE); } -diff -r 25523be1816e innobase/buf/buf0rea.c --- - a/innobase/buf/buf0rea.c Mon Dec 22 00:25:06 2008 -0800 +++ - a/innobase/buf/buf0rea.c Tue Feb 17 22:33:00 2009 -0800 @@ -315,9 +315,9 @@ diff -r 25523be1816e innobase/buf/buf0rea.c } } -diff -r 25523be1816e innobase/fil/fil0fil.c --- - a/innobase/fil/fil0fil.c Mon Dec 22 00:25:06 2008 -0800 +++ - a/innobase/fil/fil0fil.c Tue Feb 17 22:33:00 2009 -0800 @@ -356,9 +356,9 @@ diff -r 25523be1816e innobase/fil/fil0fil.c #endif ut_a(ret); -diff -r 25523be1816e innobase/include/buf0rea.h --- - a/innobase/include/buf0rea.h Mon Dec 22 00:25:06 2008 -0800 +++ - a/innobase/include/buf0rea.h Tue Feb 17 22:33:00 2009 -0800 @@ -388,9 +388,9 @@ diff -r 25523be1816e innobase/include/buf0rea.h /************************************************************************ Issues read requests for pages which the ibuf module wants to read in, in order to contract the insert buffer tree. Technically, this function is like -diff -r 25523be1816e innobase/include/fil0fil.h --- - a/innobase/include/fil0fil.h Mon Dec 22 00:25:06 2008 -0800 +++ - a/innobase/include/fil0fil.h Tue Feb 17 22:33:00 2009 -0800 @@ -415,9 +415,9 @@ diff -r 25523be1816e innobase/include/fil0fil.h /************************************************************************ Reads data from a space to a buffer. Remember that the possible incomplete blocks at the end of file are ignored: they are not taken into account when -diff -r 25523be1816e innobase/include/os0file.h --- - a/innobase/include/os0file.h Mon Dec 22 00:25:06 2008 -0800 +++ - a/innobase/include/os0file.h Tue Feb 17 22:33:00 2009 -0800 @@ -460,9 +460,9 @@ diff -r 25523be1816e innobase/include/os0file.h /**************************************************************************** Wakes up all async i/o threads so that they know to exit themselves in shutdown. */ -diff -r 25523be1816e innobase/include/srv0srv.h --- - a/innobase/include/srv0srv.h Mon Dec 22 00:25:06 2008 -0800 +++ - a/innobase/include/srv0srv.h Tue Feb 17 22:33:00 2009 -0800 @@ -472,9 +472,9 @@ diff -r 25523be1816e innobase/include/srv0srv.h /* This is set to TRUE if the MySQL user has set it in MySQL */ extern ibool srv_lower_case_table_names; -diff -r 25523be1816e innobase/include/trx0trx.h --- - a/innobase/include/trx0trx.h Mon Dec 22 00:25:06 2008 -0800 +++ - a/innobase/include/trx0trx.h Tue Feb 17 22:33:00 2009 -0800 @@ -493,9 +493,9 @@ diff -r 25523be1816e innobase/include/trx0trx.h }; #define TRX_MAX_N_THREADS 32 /* maximum number of concurrent -diff -r 25523be1816e innobase/lock/lock0lock.c --- - a/innobase/lock/lock0lock.c Mon Dec 22 00:25:06 2008 -0800 +++ - a/innobase/lock/lock0lock.c Tue Feb 17 22:33:00 2009 -0800 @@ -538,9 +538,9 @@ diff -r 25523be1816e innobase/lock/lock0lock.c trx->que_state = TRX_QUE_LOCK_WAIT; trx->was_chosen_as_deadlock_victim = FALSE; trx->wait_started = time(NULL); -diff -r 25523be1816e innobase/os/os0file.c --- - a/innobase/os/os0file.c Mon Dec 22 00:25:06 2008 -0800 +++ - a/innobase/os/os0file.c Tue Feb 17 22:33:00 2009 -0800 @@ -702,9 +702,9 @@ diff -r 25523be1816e innobase/os/os0file.c if (type == OS_FILE_READ) { if (os_aio_use_native_aio) { #ifdef WIN_ASYNC_IO -diff -r 25523be1816e innobase/srv/srv0srv.c --- - a/innobase/srv/srv0srv.c Mon Dec 22 00:25:06 2008 -0800 +++ - a/innobase/srv/srv0srv.c Tue Feb 17 22:33:00 2009 -0800 @@ -756,9 +756,9 @@ diff -r 25523be1816e innobase/srv/srv0srv.c os_fast_mutex_lock(&srv_conc_mutex); -diff -r 25523be1816e innobase/trx/trx0trx.c --- - a/innobase/trx/trx0trx.c Mon Dec 22 00:25:06 2008 -0800 +++ - a/innobase/trx/trx0trx.c Tue Feb 17 22:33:00 2009 -0800 @@ -859,9 +859,9 @@ diff -r 25523be1816e innobase/trx/trx0trx.c trx->que_state = TRX_QUE_RUNNING; } -diff -r 25523be1816e mysys/my_getopt.c --- - a/mysys/my_getopt.c Mon Dec 22 00:25:06 2008 -0800 +++ - a/mysys/my_getopt.c Tue Feb 17 22:33:00 2009 -0800 @@ -872,9 +872,9 @@ diff -r 25523be1816e mysys/my_getopt.c case GET_LL: printf("%s\n", llstr(*((longlong*) value), buff)); break; -diff -r 25523be1816e patch_info/microslow_innodb.info +diff -r 04958490fc6d patch_info/microslow_innodb.info --- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ b/patch_info/microslow_innodb.info Mon Dec 22 00:26:39 2008 -0800 @@ -891,9 +891,9 @@ diff -r 25523be1816e patch_info/microslow_innodb.info + +2008-11 +Arjen Lentz: Fixups (backward compatibility) by Arjen Lentz -diff -r 25523be1816e scripts/mysqldumpslow.sh --- - a/scripts/mysqldumpslow.sh Mon Dec 22 00:25:06 2008 -0800 +++ - a/scripts/mysqldumpslow.sh Tue Feb 17 22:33:00 2009 -0800 @@ -905,9 +905,9 @@ diff -r 25523be1816e scripts/mysqldumpslow.sh $t -= $l unless $opt{l}; # remove fluff that mysqld writes to log when it (re)starts: -diff -r 25523be1816e sql-common/my_time.c --- - a/sql-common/my_time.c Mon Dec 22 00:25:06 2008 -0800 +++ - a/sql-common/my_time.c Tue Feb 17 22:33:00 2009 -0800 @@ -946,9 +946,9 @@ diff -r 25523be1816e sql-common/my_time.c + *ltime= newtime; + return newtime; +} -diff -r 25523be1816e sql/filesort.cc --- - a/sql/filesort.cc Mon Dec 22 00:25:06 2008 -0800 +++ - a/sql/filesort.cc Tue Feb 17 22:33:00 2009 -0800 @@ -973,9 +973,9 @@ diff -r 25523be1816e sql/filesort.cc if (param->not_killable) { killed= ¬_killable; -diff -r 25523be1816e sql/ha_innodb.cc --- - a/sql/ha_innodb.cc Mon Dec 22 00:25:06 2008 -0800 +++ - a/sql/ha_innodb.cc Tue Feb 17 22:33:00 2009 -0800 @@ -1025,7 +1025,7 @@ diff -r 25523be1816e sql/ha_innodb.cc /* The default dir for log files is the datadir of MySQL */ -@@ -4673,6 +4701,12 @@ +@@ -4681,6 +4709,12 @@ trx->check_unique_secondary = FALSE; } @@ -1038,7 +1038,7 @@ diff -r 25523be1816e sql/ha_innodb.cc if (lower_case_table_names) { srv_lower_case_table_names = TRUE; } else { -@@ -4938,6 +4972,12 @@ +@@ -4946,6 +4980,12 @@ trx->check_unique_secondary = FALSE; } @@ -1051,7 +1051,7 @@ diff -r 25523be1816e sql/ha_innodb.cc name_len = strlen(name); assert(name_len < 1000); -@@ -5025,6 +5065,12 @@ +@@ -5033,6 +5073,12 @@ trx->check_foreigns = FALSE; } @@ -1064,7 +1064,7 @@ diff -r 25523be1816e sql/ha_innodb.cc error = row_drop_database_for_mysql(namebuf, trx); my_free(namebuf, MYF(0)); -@@ -5089,6 +5135,12 @@ +@@ -5097,6 +5143,12 @@ if (current_thd->options & OPTION_NO_FOREIGN_KEY_CHECKS) { trx->check_foreigns = FALSE; @@ -1077,7 +1077,7 @@ diff -r 25523be1816e sql/ha_innodb.cc } name_len1 = strlen(from); -@@ -6098,6 +6150,7 @@ +@@ -6106,6 +6158,7 @@ { row_prebuilt_t* prebuilt = (row_prebuilt_t*) innobase_prebuilt; trx_t* trx; @@ -1085,7 +1085,7 @@ diff -r 25523be1816e sql/ha_innodb.cc DBUG_ENTER("ha_innobase::external_lock"); DBUG_PRINT("enter",("lock_type: %d", lock_type)); -@@ -6221,7 +6274,24 @@ +@@ -6229,7 +6282,24 @@ if (trx->n_mysql_tables_in_use == 0) { @@ -1111,9 +1111,9 @@ diff -r 25523be1816e sql/ha_innodb.cc prebuilt->used_in_HANDLER = FALSE; if (!(thd->options & (OPTION_NOT_AUTOCOMMIT | OPTION_BEGIN))) { -diff -r 25523be1816e sql/ha_innodb.h --- - a/sql/ha_innodb.h Mon Dec 22 00:25:06 2008 -0800 +++ - a/sql/ha_innodb.h Tue Feb 17 22:33:00 2009 -0800 @@ -1123,10 +1123,10 @@ diff -r 25523be1816e sql/ha_innodb.h /*********************************************************************** This function is used to prepare X/Open XA distributed transaction */ -diff -r 25523be1816e sql/log.cc --- - a/sql/log.cc Mon Dec 22 00:25:06 2008 -0800 +++ - a/sql/log.cc Tue Feb 17 22:33:00 2009 -0800 @@ -1141,7 +1141,7 @@ diff -r 25523be1816e sql/log.cc return 0; DBUG_ENTER("MYSQL_LOG::write"); -@@ -2243,7 +2244,8 @@ +@@ -2298,7 +2299,8 @@ int tmp_errno=0; char buff[80],*end; end=buff; @@ -1151,7 +1151,7 @@ diff -r 25523be1816e sql/log.cc { VOID(pthread_mutex_unlock(&LOCK_log)); DBUG_RETURN(0); -@@ -2273,22 +2275,72 @@ +@@ -2328,22 +2330,72 @@ if (my_b_printf(&log_file, "# User@Host: %s[%s] @ %s [%s]\n", sctx->priv_user ? sctx->priv_user : "", @@ -1230,9 +1230,9 @@ diff -r 25523be1816e sql/log.cc } if (thd->db && strcmp(thd->db,db)) { // Database changed -diff -r 25523be1816e sql/log_event.cc --- - a/sql/log_event.cc Mon Dec 22 00:25:06 2008 -0800 +++ - a/sql/log_event.cc Tue Feb 17 22:33:00 2009 -0800 @@ -1241,10 +1241,10 @@ diff -r 25523be1816e sql/log_event.cc } else -diff -r 25523be1816e sql/mysql_priv.h --- - a/sql/mysql_priv.h Mon Dec 22 00:25:06 2008 -0800 +++ - a/sql/mysql_priv.h Tue Feb 17 22:33:00 2009 -0800 @@ -1323,7 +1323,7 @@ diff -r 25523be1816e sql/mysql_priv.h enum enum_parsing_place { -@@ -1345,6 +1417,7 @@ +@@ -1351,6 +1423,7 @@ extern bool using_update_log, opt_large_files, server_id_supplied; extern bool opt_update_log, opt_bin_log, opt_error_log; extern my_bool opt_log, opt_slow_log, opt_log_queries_not_using_indexes; @@ -1331,7 +1331,7 @@ diff -r 25523be1816e sql/mysql_priv.h extern bool opt_disable_networking, opt_skip_show_db; extern my_bool opt_character_set_client_handshake; extern bool volatile abort_loop, shutdown_in_progress, grant_option; -@@ -1356,7 +1429,8 @@ +@@ -1362,7 +1435,8 @@ extern my_bool opt_enable_named_pipe, opt_sync_frm, opt_allow_suspicious_udfs; extern my_bool opt_secure_auth; extern char* opt_secure_file_priv; @@ -1341,9 +1341,9 @@ diff -r 25523be1816e sql/mysql_priv.h extern my_bool sp_automatic_privileges, opt_noacl; extern my_bool opt_old_style_user_limits, trust_function_creators; extern uint opt_crash_binlog_innodb; -diff -r 25523be1816e sql/mysqld.cc --- - a/sql/mysqld.cc Mon Dec 22 00:25:06 2008 -0800 +++ - a/sql/mysqld.cc Tue Feb 17 22:33:00 2009 -0800 @@ -1366,7 +1366,7 @@ diff -r 25523be1816e sql/mysqld.cc /* True if there is at least one per-hour limit for some user, so we should check them before each query (and possibly reset counters when hour is -@@ -507,6 +508,7 @@ +@@ -507,6 +509,7 @@ Ge_creator ge_creator; Le_creator le_creator; @@ -1374,7 +1374,7 @@ diff -r 25523be1816e sql/mysqld.cc FILE *bootstrap_file; int bootstrap_error; -@@ -584,7 +586,7 @@ +@@ -584,7 +587,7 @@ static int cleanup_done; static ulong opt_specialflag, opt_myisam_block_size; static char *opt_logname, *opt_update_logname, *opt_binlog_index_name; @@ -1383,7 +1383,7 @@ diff -r 25523be1816e sql/mysqld.cc static char *mysql_home_ptr, *pidfile_name_ptr; static char **defaults_argv; static char *opt_bin_logname; -@@ -3655,6 +3657,8 @@ +@@ -3693,6 +3696,8 @@ unireg_abort(1); } } @@ -1392,7 +1392,7 @@ diff -r 25523be1816e sql/mysqld.cc #endif /* __WIN__ */ if (init_common_variables(MYSQL_CONFIG_NAME, -@@ -4901,7 +4905,7 @@ +@@ -4943,7 +4948,7 @@ OPT_INTERACTIVE_TIMEOUT, OPT_JOIN_BUFF_SIZE, OPT_KEY_BUFFER_SIZE, OPT_KEY_CACHE_BLOCK_SIZE, OPT_KEY_CACHE_DIVISION_LIMIT, OPT_KEY_CACHE_AGE_THRESHOLD, @@ -1401,7 +1401,7 @@ diff -r 25523be1816e sql/mysqld.cc OPT_LOWER_CASE_TABLE_NAMES, OPT_MAX_ALLOWED_PACKET, OPT_MAX_BINLOG_CACHE_SIZE, OPT_MAX_BINLOG_SIZE, OPT_MAX_CONNECTIONS, OPT_MAX_CONNECT_ERRORS, -@@ -4992,11 +4996,18 @@ +@@ -5034,11 +5039,18 @@ OPT_TIMED_MUTEXES, OPT_OLD_STYLE_USER_LIMITS, OPT_LOG_SLOW_ADMIN_STATEMENTS, @@ -1420,7 +1420,7 @@ diff -r 25523be1816e sql/mysqld.cc OPT_INNODB_ROLLBACK_ON_TIMEOUT, OPT_SECURE_FILE_PRIV, OPT_KEEP_FILES_ON_CREATE, -@@ -5386,8 +5396,17 @@ +@@ -5428,8 +5440,17 @@ (gptr*) &opt_log_slow_admin_statements, (gptr*) &opt_log_slow_admin_statements, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, @@ -1438,7 +1438,7 @@ diff -r 25523be1816e sql/mysqld.cc (gptr*) &opt_slow_logname, (gptr*) &opt_slow_logname, 0, GET_STR, OPT_ARG, 0, 0, 0, 0, 0, 0}, {"log-tc", OPT_LOG_TC, -@@ -5753,6 +5772,9 @@ +@@ -5795,6 +5816,9 @@ "Tells the slave thread to continue replication when a query returns an error from the provided list.", 0, 0, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, #endif @@ -1448,7 +1448,7 @@ diff -r 25523be1816e sql/mysqld.cc {"socket", OPT_SOCKET, "Socket file to use for connection.", (gptr*) &mysqld_unix_port, (gptr*) &mysqld_unix_port, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, -@@ -6055,11 +6077,31 @@ +@@ -6097,11 +6121,31 @@ (gptr*) 0, 0, (GET_ULONG | GET_ASK_ADDR) , REQUIRED_ARG, 100, 1, 100, 0, 1, 0}, @@ -1485,7 +1485,7 @@ diff -r 25523be1816e sql/mysqld.cc {"lower_case_table_names", OPT_LOWER_CASE_TABLE_NAMES, "If set to 1 table names are stored in lowercase on disk and table names will be case-insensitive. Should be set to 2 if you are using a case insensitive file system", (gptr*) &lower_case_table_names, -@@ -6835,7 +6873,11 @@ +@@ -6878,7 +6922,11 @@ global_system_variables.max_join_size= (ulonglong) HA_POS_ERROR; max_system_variables.max_join_size= (ulonglong) HA_POS_ERROR; global_system_variables.old_passwords= 0; @@ -1498,7 +1498,7 @@ diff -r 25523be1816e sql/mysqld.cc /* Default behavior for 4.1 and 5.0 is to treat NULL values as unequal when collecting index statistics for MyISAM tables. -@@ -7296,6 +7338,35 @@ +@@ -7339,6 +7387,35 @@ case OPT_BOOTSTRAP: opt_noacl=opt_bootstrap=1; break; @@ -1534,7 +1534,7 @@ diff -r 25523be1816e sql/mysqld.cc case OPT_STORAGE_ENGINE: { if ((enum db_type)((global_system_variables.table_type= -@@ -7628,10 +7699,14 @@ +@@ -7671,10 +7748,14 @@ if (opt_bdb) sql_print_warning("this binary does not contain BDB storage engine"); #endif @@ -1552,9 +1552,9 @@ diff -r 25523be1816e sql/mysqld.cc if (argc > 0) { fprintf(stderr, "%s: Too many arguments (first extra is '%s').\nUse --help to get a list of available options\n", my_progname, *argv); -diff -r 25523be1816e sql/set_var.cc --- - a/sql/set_var.cc Mon Dec 22 00:25:06 2008 -0800 +++ - a/sql/set_var.cc Tue Feb 17 22:33:00 2009 -0800 @@ -1570,7 +1570,7 @@ diff -r 25523be1816e sql/set_var.cc sys_var_thd_bool sys_low_priority_updates("low_priority_updates", &SV::low_priority_updates, fix_low_priority_updates); -@@ -283,6 +285,8 @@ +@@ -283,6 +287,8 @@ &SV::max_tmp_tables); sys_var_long_ptr sys_max_write_lock_count("max_write_lock_count", &max_write_lock_count); @@ -1579,7 +1579,7 @@ diff -r 25523be1816e sql/set_var.cc sys_var_thd_ulong sys_multi_range_count("multi_range_count", &SV::multi_range_count); sys_var_long_ptr sys_myisam_data_pointer_size("myisam_data_pointer_size", -@@ -327,6 +331,20 @@ +@@ -327,6 +333,20 @@ sys_var_bool_ptr sys_relay_log_purge("relay_log_purge", &relay_log_purge); #endif @@ -1600,7 +1600,7 @@ diff -r 25523be1816e sql/set_var.cc sys_var_long_ptr sys_rpl_recovery_rank("rpl_recovery_rank", &rpl_recovery_rank); sys_var_long_ptr sys_query_cache_size("query_cache_size", -@@ -694,6 +712,10 @@ +@@ -694,6 +714,10 @@ &sys_log_off, &sys_log_queries_not_using_indexes, &sys_log_slow, @@ -1611,7 +1611,7 @@ diff -r 25523be1816e sql/set_var.cc &sys_log_update, &sys_log_warnings, &sys_long_query_time, -@@ -717,6 +738,7 @@ +@@ -717,6 +741,7 @@ &sys_max_tmp_tables, &sys_max_user_connections, &sys_max_write_lock_count, @@ -1619,7 +1619,7 @@ diff -r 25523be1816e sql/set_var.cc &sys_multi_range_count, &sys_myisam_data_pointer_size, &sys_myisam_max_sort_file_size, -@@ -770,6 +792,8 @@ +@@ -770,6 +795,8 @@ &sys_slave_skip_counter, #endif &sys_slow_launch_time, @@ -1628,7 +1628,7 @@ diff -r 25523be1816e sql/set_var.cc &sys_sort_buffer, &sys_sql_big_tables, &sys_sql_low_priority_updates, -@@ -986,8 +1010,11 @@ +@@ -986,8 +1013,11 @@ {"log_slave_updates", (char*) &opt_log_slave_updates, SHOW_MY_BOOL}, #endif {sys_log_slow.name, (char*) &sys_log_slow, SHOW_SYS}, @@ -1641,7 +1641,7 @@ diff -r 25523be1816e sql/set_var.cc {sys_low_priority_updates.name, (char*) &sys_low_priority_updates, SHOW_SYS}, {"lower_case_file_system", (char*) &lower_case_file_system, SHOW_MY_BOOL}, {"lower_case_table_names", (char*) &lower_case_table_names, SHOW_INT}, -@@ -1014,6 +1041,7 @@ +@@ -1014,6 +1044,7 @@ {sys_max_tmp_tables.name, (char*) &sys_max_tmp_tables, SHOW_SYS}, {sys_max_user_connections.name,(char*) &sys_max_user_connections, SHOW_SYS}, {sys_max_write_lock_count.name, (char*) &sys_max_write_lock_count,SHOW_SYS}, @@ -1649,7 +1649,7 @@ diff -r 25523be1816e sql/set_var.cc {sys_multi_range_count.name, (char*) &sys_multi_range_count, SHOW_SYS}, {sys_myisam_data_pointer_size.name, (char*) &sys_myisam_data_pointer_size, SHOW_SYS}, {sys_myisam_max_sort_file_size.name, (char*) &sys_myisam_max_sort_file_size, -@@ -1101,6 +1129,8 @@ +@@ -1101,6 +1132,8 @@ {sys_slave_trans_retries.name,(char*) &sys_slave_trans_retries, SHOW_SYS}, #endif {sys_slow_launch_time.name, (char*) &sys_slow_launch_time, SHOW_SYS}, @@ -1658,7 +1658,7 @@ diff -r 25523be1816e sql/set_var.cc #ifdef HAVE_SYS_UN_H {"socket", (char*) &mysqld_unix_port, SHOW_CHAR_PTR}, #endif -@@ -1141,6 +1171,7 @@ +@@ -1141,6 +1174,7 @@ {sys_tx_isolation.name, (char*) &sys_tx_isolation, SHOW_SYS}, {sys_updatable_views_with_limit.name, (char*) &sys_updatable_views_with_limit,SHOW_SYS}, @@ -1666,7 +1666,7 @@ diff -r 25523be1816e sql/set_var.cc {sys_version.name, (char*) &sys_version, SHOW_SYS}, #ifdef HAVE_BERKELEY_DB {sys_version_bdb.name, (char*) &sys_version_bdb, SHOW_SYS}, -@@ -1769,6 +1799,17 @@ +@@ -1769,6 +1803,17 @@ } @@ -1684,7 +1684,7 @@ diff -r 25523be1816e sql/set_var.cc bool sys_var_thd_bool::update(THD *thd, set_var *var) { if (var->type == OPT_GLOBAL) -@@ -1924,6 +1965,19 @@ +@@ -1924,6 +1969,19 @@ value= *(longlong*) value_ptr(thd, var_type, base); pthread_mutex_unlock(&LOCK_global_system_variables); return new Item_int(value); @@ -1704,7 +1704,7 @@ diff -r 25523be1816e sql/set_var.cc } case SHOW_HA_ROWS: { -@@ -2757,6 +2811,30 @@ +@@ -2757,6 +2815,30 @@ } @@ -1735,7 +1735,7 @@ diff -r 25523be1816e sql/set_var.cc #ifdef HAVE_REPLICATION bool sys_var_slave_skip_counter::check(THD *thd, set_var *var) { -@@ -3519,6 +3597,191 @@ +@@ -3526,6 +3608,191 @@ #endif } @@ -1927,9 +1927,9 @@ diff -r 25523be1816e sql/set_var.cc /**************************************************************************** Functions to handle table_type ****************************************************************************/ -diff -r 25523be1816e sql/set_var.h --- - a/sql/set_var.h Mon Dec 22 00:25:06 2008 -0800 +++ - a/sql/set_var.h Tue Feb 17 22:33:00 2009 -0800 @@ -2075,9 +2075,9 @@ diff -r 25523be1816e sql/set_var.h + const ulong none_val, const ulong invalid_val); +const char *msl_option_get_name(const struct msl_opts *opts, ulong val); +char *msl_flag_get_name(const struct msl_opts *opts, char *buf, ulong val); -diff -r 25523be1816e sql/slave.cc --- - a/sql/slave.cc Mon Dec 22 00:25:06 2008 -0800 +++ - a/sql/slave.cc Tue Feb 17 22:33:00 2009 -0800 @@ -2091,9 +2091,9 @@ diff -r 25523be1816e sql/slave.cc thd->client_capabilities = CLIENT_LOCAL_FILES; thd->real_id=pthread_self(); pthread_mutex_lock(&LOCK_thread_count); -diff -r 25523be1816e sql/sql_cache.cc --- - a/sql/sql_cache.cc Mon Dec 22 00:25:06 2008 -0800 +++ - a/sql/sql_cache.cc Tue Feb 17 22:33:00 2009 -0800 @@ -2110,9 +2110,9 @@ diff -r 25523be1816e sql/sql_cache.cc DBUG_RETURN(0); // Query was not cached } -diff -r 25523be1816e sql/sql_class.cc --- - a/sql/sql_class.cc Mon Dec 22 00:25:06 2008 -0800 +++ - a/sql/sql_class.cc Tue Feb 17 22:33:00 2009 -0800 @@ -2163,9 +2163,9 @@ diff -r 25523be1816e sql/sql_class.cc } -diff -r 25523be1816e sql/sql_class.h --- - a/sql/sql_class.h Mon Dec 22 00:25:06 2008 -0800 +++ - a/sql/sql_class.h Tue Feb 17 22:33:00 2009 -0800 @@ -2174,7 +2174,7 @@ diff -r 25523be1816e sql/sql_class.h #define TC_LOG_PAGE_SIZE 8192 #define TC_LOG_MIN_SIZE (3*TC_LOG_PAGE_SIZE) -@@ -314,7 +321,7 @@ +@@ -321,7 +322,7 @@ bool write(THD *thd, enum enum_server_command command, const char *format, ...) ATTRIBUTE_FORMAT(printf, 4, 5); bool write(THD *thd, const char *query, uint query_length, @@ -2183,7 +2183,7 @@ diff -r 25523be1816e sql/sql_class.h bool write(Log_event* event_info); // binary log write bool write(THD *thd, IO_CACHE *cache, Log_event *commit_event); -@@ -520,13 +527,14 @@ +@@ -527,13 +528,14 @@ ulong auto_increment_increment, auto_increment_offset; ulong bulk_insert_buff_size; ulong join_buff_size; @@ -2199,7 +2199,7 @@ diff -r 25523be1816e sql/sql_class.h ulong multi_range_count; ulong myisam_repair_threads; ulong myisam_sort_buff_size; -@@ -542,10 +550,13 @@ +@@ -549,10 +551,13 @@ ulong preload_buff_size; ulong profiling_history_size; ulong query_cache_type; @@ -2213,7 +2213,7 @@ diff -r 25523be1816e sql/sql_class.h ulong table_type; ulong tx_isolation; ulong completion_type; -@@ -1121,6 +1132,12 @@ +@@ -1128,6 +1133,12 @@ uint in_sub_stmt; bool enable_slow_log, insert_id_used, clear_next_insert_id; bool last_insert_id_used; @@ -2226,7 +2226,7 @@ diff -r 25523be1816e sql/sql_class.h my_bool no_send_ok; SAVEPOINT *savepoints; }; -@@ -1177,6 +1194,11 @@ +@@ -1184,6 +1195,11 @@ class THD :public Statement, public Open_tables_state { @@ -2238,7 +2238,7 @@ diff -r 25523be1816e sql/sql_class.h public: /* Constant for THD::where initialization in the beginning of every query. -@@ -1285,10 +1307,24 @@ +@@ -1292,10 +1308,24 @@ */ const char *where; time_t start_time,time_after_lock,user_time; @@ -2263,7 +2263,7 @@ diff -r 25523be1816e sql/sql_class.h /* <> 0 if we are inside of trigger or stored function. */ uint in_sub_stmt; -@@ -1678,11 +1714,11 @@ +@@ -1685,11 +1715,11 @@ sql_print_information("time() failed with %d", errno); } @@ -2280,9 +2280,9 @@ diff -r 25523be1816e sql/sql_class.h inline void insert_id(ulonglong id_arg) { last_insert_id= id_arg; -diff -r 25523be1816e sql/sql_parse.cc --- - a/sql/sql_parse.cc Mon Dec 22 00:25:06 2008 -0800 +++ - a/sql/sql_parse.cc Tue Feb 17 22:33:00 2009 -0800 @@ -2381,7 +2381,7 @@ diff -r 25523be1816e sql/sql_parse.cc /* Reset warning count for each query that uses tables A better approach would be to reset this for any commands -@@ -6084,6 +6120,15 @@ +@@ -6084,6 +6124,15 @@ thd->total_warn_count=0; // Warnings for this query thd->rand_used= 0; thd->sent_row_count= thd->examined_row_count= 0; @@ -2397,10 +2397,10 @@ diff -r 25523be1816e sql/sql_parse.cc } DBUG_VOID_RETURN; } -diff -r 25523be1816e sql/sql_select.cc --- - a/sql/sql_select.cc Mon Dec 22 00:25:06 2008 -0800 +++ - a/sql/sql_select.cc Tue Feb 17 22:33:00 2009 -0800 @@ -2412,7 +2412,7 @@ diff -r 25523be1816e sql/sql_select.cc } } else -@@ -6237,8 +6240,11 @@ +@@ -6240,8 +6243,11 @@ { join->thd->server_status|=SERVER_QUERY_NO_INDEX_USED; if (statistics) @@ -2424,7 +2424,7 @@ diff -r 25523be1816e sql/sql_select.cc } } if (!table->no_keyread) -@@ -9302,6 +9308,7 @@ +@@ -9305,6 +9311,7 @@ (ulong) rows_limit,test(group))); statistic_increment(thd->status_var.created_tmp_tables, &LOCK_status); @@ -2432,7 +2432,7 @@ diff -r 25523be1816e sql/sql_select.cc if (use_temp_pool && !(test_flags & TEST_KEEP_TMP_TABLES)) temp_pool_slot = bitmap_set_next(&temp_pool); -@@ -10162,6 +10169,7 @@ +@@ -10165,6 +10172,7 @@ } statistic_increment(table->in_use->status_var.created_tmp_disk_tables, &LOCK_status); @@ -2440,10 +2440,10 @@ diff -r 25523be1816e sql/sql_select.cc table->s->db_record_offset= 1; DBUG_RETURN(0); err: -diff -r 25523be1816e sql/sql_show.cc --- - a/sql/sql_show.cc Mon Dec 22 00:25:06 2008 -0800 +++ - a/sql/sql_show.cc Tue Feb 17 22:33:00 2009 -0800 @@ -2456,9 +2456,9 @@ diff -r 25523be1816e sql/sql_show.cc break; case SHOW_HA_ROWS: end= longlong10_to_str((longlong) *(ha_rows*) value, buff, 10); -diff -r 25523be1816e sql/structs.h --- - a/sql/structs.h Mon Dec 22 00:25:06 2008 -0800 +++ - a/sql/structs.h Tue Feb 17 22:33:00 2009 -0800 @@ -2467,6 +2467,6 @@ diff -r 25523be1816e sql/structs.h - SHOW_DOUBLE_STATUS, + SHOW_LONG, SHOW_LONGLONG, SHOW_MICROTIME, SHOW_INT, SHOW_CHAR, SHOW_CHAR_PTR, + SHOW_DOUBLE_STATUS, - SHOW_BOOL, SHOW_MY_BOOL, SHOW_OPENTABLES, SHOW_STARTTIME, + SHOW_BOOL, SHOW_MY_BOOL, SHOW_OPENTABLES, SHOW_STARTTIME, SHOW_QUERIES, SHOW_LONG_CONST, SHOW_INT_CONST, SHOW_HAVE, SHOW_SYS, SHOW_HA_ROWS, SHOW_VARS, --- a/1003_all_userstatv2-percona-5.0.75-b12.patch +++ a/1003_all_userstatv2-percona-5.0.75-b12.patch @@ -1,7 +1,7 @@ -diff -r 1270c564d514 BUILD/Makefile.in --- - a/BUILD/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/BUILD/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -9,10 +9,10 @@ diff -r 1270c564d514 BUILD/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 Docs/Makefile.in --- - a/Docs/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/Docs/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -20,10 +20,10 @@ diff -r 1270c564d514 Docs/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 Makefile.in --- - a/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -31,10 +31,10 @@ diff -r 1270c564d514 Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 SSL/Makefile.in --- - a/SSL/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/SSL/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -42,19 +42,10 @@ diff -r 1270c564d514 SSL/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 aclocal.m4 --- - a/aclocal.m4 Mon Dec 22 00:26:39 2008 -0800 +++ - a/aclocal.m4 Tue Feb 17 22:33:23 2009 -0800 @@ -64,7 +55,7 @@ diff -r 1270c564d514 aclocal.m4 # An ERE matcher. EGREP=$lt_EGREP -@@ -4438,11 +4441,11 @@ +@@ -4545,11 +4548,11 @@ # Dependencies to place before the objects being linked to create a # shared library. @@ -78,7 +69,7 @@ diff -r 1270c564d514 aclocal.m4 # Dependencies to place before the objects being linked to create a # shared library. -@@ -4454,7 +4457,7 @@ +@@ -4561,7 +4564,7 @@ # The library search path used internally by the compiler when linking # a shared library. @@ -87,7 +78,7 @@ diff -r 1270c564d514 aclocal.m4 # Method to check whether dependent libraries are shared objects. deplibs_check_method=$lt_deplibs_check_method -@@ -4534,7 +4537,7 @@ +@@ -4641,7 +4644,7 @@ link_all_deplibs=$_LT_AC_TAGVAR(link_all_deplibs, $1) # Compile-time system search path for libraries @@ -96,26 +87,10 @@ diff -r 1270c564d514 aclocal.m4 # Run-time system search path for libraries sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec -@@ -6370,6 +6373,7 @@ - done - done - done -+IFS=$as_save_IFS - lt_ac_max=0 - lt_ac_count=0 - # Add /usr/xpg4/bin/sed as it is typically found on Solaris -@@ -6402,6 +6406,7 @@ - done - ]) - SED=$lt_cv_path_SED -+AC_SUBST([SED]) - AC_MSG_RESULT([$SED]) - ]) - -diff -r 1270c564d514 client/Makefile.in --- - a/client/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/client/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -123,10 +98,10 @@ diff -r 1270c564d514 client/Makefile.in LIBS = @CLIENT_LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 cmd-line-utils/Makefile.in --- - a/cmd-line-utils/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/cmd-line-utils/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -134,10 +109,10 @@ diff -r 1270c564d514 cmd-line-utils/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 cmd-line-utils/libedit/Makefile.in --- - a/cmd-line-utils/libedit/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/cmd-line-utils/libedit/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -145,10 +120,10 @@ diff -r 1270c564d514 cmd-line-utils/libedit/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 cmd-line-utils/readline/Makefile.in --- - a/cmd-line-utils/readline/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/cmd-line-utils/readline/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -156,19 +131,10 @@ diff -r 1270c564d514 cmd-line-utils/readline/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 configure --- - a/configure Mon Dec 22 00:26:39 2008 -0800 +++ - a/configure Tue Feb 17 22:33:23 2009 -0800 @@ -260,8 +226,8 @@ diff -r 1270c564d514 configure + for ac_func in clock_gettime do - as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` -@@ -41644,7 +41728,7 @@ + as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +@@ -42956,7 +43040,7 @@ fi @@ -270,17 +236,9 @@ diff -r 1270c564d514 configure -@@ -42984,6 +43068,7 @@ - s,@MAKE_SHELL@,$MAKE_SHELL,;t t - s,@TERMCAP_LIB@,$TERMCAP_LIB,;t t - s,@LIBEDIT_LOBJECTS@,$LIBEDIT_LOBJECTS,;t t -+s,@LIBRT@,$LIBRT,;t t - s,@tools_dirs@,$tools_dirs,;t t - s,@openssl_libs@,$openssl_libs,;t t - s,@openssl_includes@,$openssl_includes,;t t -diff -r 1270c564d514 configure.in --- - a/configure.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/configure.in Tue Feb 17 22:33:23 2009 -0800 @@ -310,10 +268,10 @@ diff -r 1270c564d514 configure.in AC_SUBST(CLIENT_LIBS) AC_SUBST(NON_THREADED_LIBS) -diff -r 1270c564d514 dbug/Makefile.in --- - a/dbug/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/dbug/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -321,10 +279,10 @@ diff -r 1270c564d514 dbug/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 extra/Makefile.in --- - a/extra/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/extra/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -332,10 +290,10 @@ diff -r 1270c564d514 extra/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 extra/yassl/Makefile.in --- - a/extra/yassl/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/extra/yassl/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -343,10 +301,10 @@ diff -r 1270c564d514 extra/yassl/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 extra/yassl/src/Makefile.in --- - a/extra/yassl/src/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/extra/yassl/src/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -354,10 +312,10 @@ diff -r 1270c564d514 extra/yassl/src/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 extra/yassl/taocrypt/Makefile.in --- - a/extra/yassl/taocrypt/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/extra/yassl/taocrypt/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -365,10 +323,10 @@ diff -r 1270c564d514 extra/yassl/taocrypt/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 extra/yassl/taocrypt/benchmark/Makefile.in --- - a/extra/yassl/taocrypt/benchmark/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/extra/yassl/taocrypt/benchmark/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -376,10 +334,10 @@ diff -r 1270c564d514 extra/yassl/taocrypt/benchmark/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 extra/yassl/taocrypt/src/Makefile.in --- - a/extra/yassl/taocrypt/src/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/extra/yassl/taocrypt/src/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -387,10 +345,10 @@ diff -r 1270c564d514 extra/yassl/taocrypt/src/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 extra/yassl/taocrypt/test/Makefile.in --- - a/extra/yassl/taocrypt/test/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/extra/yassl/taocrypt/test/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -398,10 +356,10 @@ diff -r 1270c564d514 extra/yassl/taocrypt/test/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 extra/yassl/testsuite/Makefile.in --- - a/extra/yassl/testsuite/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/extra/yassl/testsuite/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -409,10 +367,10 @@ diff -r 1270c564d514 extra/yassl/testsuite/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 heap/Makefile.in --- - a/heap/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/heap/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -420,10 +378,10 @@ diff -r 1270c564d514 heap/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 include/Makefile.in --- - a/include/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/include/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -431,9 +389,9 @@ diff -r 1270c564d514 include/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 include/mysql_com.h --- - a/include/mysql_com.h Mon Dec 22 00:26:39 2008 -0800 +++ - a/include/mysql_com.h Tue Feb 17 22:33:23 2009 -0800 @@ -446,10 +404,10 @@ diff -r 1270c564d514 include/mysql_com.h /* The following can't be set with mysql_refresh() */ #define REFRESH_READ_LOCK 16384 /* Lock tables for read */ -diff -r 1270c564d514 libmysql/Makefile.in --- - a/libmysql/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/libmysql/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -457,10 +415,10 @@ diff -r 1270c564d514 libmysql/Makefile.in LIBS = @CLIENT_LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 libmysql_r/Makefile.in --- - a/libmysql_r/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/libmysql_r/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -468,10 +426,10 @@ diff -r 1270c564d514 libmysql_r/Makefile.in LIBS = @LIBS@ @ZLIB_LIBS@ @openssl_libs@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 libmysqld/Makefile.in --- - a/libmysqld/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/libmysqld/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -479,10 +437,10 @@ diff -r 1270c564d514 libmysqld/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 libmysqld/examples/Makefile.in --- - a/libmysqld/examples/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/libmysqld/examples/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -490,10 +448,10 @@ diff -r 1270c564d514 libmysqld/examples/Makefile.in LIBS = @LIBS@ @WRAPLIBS@ @CLIENT_LIBS@ $(yassl_libs) LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 man/Makefile.in --- - a/man/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/man/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -501,10 +459,10 @@ diff -r 1270c564d514 man/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 myisam/Makefile.in --- - a/myisam/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/myisam/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -512,10 +470,10 @@ diff -r 1270c564d514 myisam/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 myisammrg/Makefile.in --- - a/myisammrg/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/myisammrg/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -523,10 +481,10 @@ diff -r 1270c564d514 myisammrg/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 mysql-test/Makefile.in --- - a/mysql-test/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/mysql-test/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -534,10 +492,10 @@ diff -r 1270c564d514 mysql-test/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 mysql-test/ndb/Makefile.in --- - a/mysql-test/ndb/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/mysql-test/ndb/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -545,9 +503,9 @@ diff -r 1270c564d514 mysql-test/ndb/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 mysql-test/r/information_schema.result --- - a/mysql-test/r/information_schema.result Mon Dec 22 00:26:39 2008 -0800 +++ - a/mysql-test/r/information_schema.result Tue Feb 17 22:33:23 2009 -0800 @@ -730,9 +688,9 @@ diff -r 1270c564d514 mysql-test/r/information_schema.result VIEWS information_schema.VIEWS 1 show global status like "Uptime_%"; Variable_name Value -diff -r 1270c564d514 mysql-test/r/information_schema_db.result --- - a/mysql-test/r/information_schema_db.result Mon Dec 22 00:26:39 2008 -0800 +++ - a/mysql-test/r/information_schema_db.result Tue Feb 17 22:33:23 2009 -0800 @@ -764,9 +722,9 @@ diff -r 1270c564d514 mysql-test/r/information_schema_db.result TRIGGERS create database `inf%`; create database mbase; -diff -r 1270c564d514 mysql-test/r/mysqlshow.result --- - a/mysql-test/r/mysqlshow.result Mon Dec 22 00:26:39 2008 -0800 +++ - a/mysql-test/r/mysqlshow.result Tue Feb 17 22:33:23 2009 -0800 @@ -815,10 +773,10 @@ diff -r 1270c564d514 mysql-test/r/mysqlshow.result | VIEWS | +---------------------------------------+ Wildcard: inf_rmation_schema -diff -r 1270c564d514 mysys/Makefile.in --- - a/mysys/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/mysys/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -826,10 +784,10 @@ diff -r 1270c564d514 mysys/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/Makefile.in --- - a/ndb/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -837,10 +795,10 @@ diff -r 1270c564d514 ndb/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/docs/Makefile.in --- - a/ndb/docs/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/docs/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -848,10 +806,10 @@ diff -r 1270c564d514 ndb/docs/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/include/Makefile.in --- - a/ndb/include/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/include/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -859,10 +817,10 @@ diff -r 1270c564d514 ndb/include/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/Makefile.in --- - a/ndb/src/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -870,10 +828,10 @@ diff -r 1270c564d514 ndb/src/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/common/Makefile.in --- - a/ndb/src/common/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/common/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -881,10 +839,10 @@ diff -r 1270c564d514 ndb/src/common/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/common/debugger/Makefile.in --- - a/ndb/src/common/debugger/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/common/debugger/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -892,10 +850,10 @@ diff -r 1270c564d514 ndb/src/common/debugger/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/common/debugger/signaldata/Makefile.in --- - a/ndb/src/common/debugger/signaldata/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/common/debugger/signaldata/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -903,10 +861,10 @@ diff -r 1270c564d514 ndb/src/common/debugger/signaldata/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/common/logger/Makefile.in --- - a/ndb/src/common/logger/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/common/logger/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -914,10 +872,10 @@ diff -r 1270c564d514 ndb/src/common/logger/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/common/mgmcommon/Makefile.in --- - a/ndb/src/common/mgmcommon/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/common/mgmcommon/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -925,10 +883,10 @@ diff -r 1270c564d514 ndb/src/common/mgmcommon/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/common/portlib/Makefile.in --- - a/ndb/src/common/portlib/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/common/portlib/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -936,10 +894,10 @@ diff -r 1270c564d514 ndb/src/common/portlib/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/common/transporter/Makefile.in --- - a/ndb/src/common/transporter/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/common/transporter/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -947,10 +905,10 @@ diff -r 1270c564d514 ndb/src/common/transporter/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/common/util/Makefile.in --- - a/ndb/src/common/util/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/common/util/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -958,10 +916,10 @@ diff -r 1270c564d514 ndb/src/common/util/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/cw/Makefile.in --- - a/ndb/src/cw/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/cw/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -969,10 +927,10 @@ diff -r 1270c564d514 ndb/src/cw/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/cw/cpcd/Makefile.in --- - a/ndb/src/cw/cpcd/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/cw/cpcd/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -980,10 +938,10 @@ diff -r 1270c564d514 ndb/src/cw/cpcd/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/kernel/Makefile.in --- - a/ndb/src/kernel/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/kernel/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -991,10 +949,10 @@ diff -r 1270c564d514 ndb/src/kernel/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/kernel/blocks/Makefile.in --- - a/ndb/src/kernel/blocks/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/kernel/blocks/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1002,10 +960,10 @@ diff -r 1270c564d514 ndb/src/kernel/blocks/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/kernel/blocks/backup/Makefile.in --- - a/ndb/src/kernel/blocks/backup/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/kernel/blocks/backup/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1013,10 +971,10 @@ diff -r 1270c564d514 ndb/src/kernel/blocks/backup/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/kernel/blocks/cmvmi/Makefile.in --- - a/ndb/src/kernel/blocks/cmvmi/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/kernel/blocks/cmvmi/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1024,10 +982,10 @@ diff -r 1270c564d514 ndb/src/kernel/blocks/cmvmi/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/kernel/blocks/dbacc/Makefile.in --- - a/ndb/src/kernel/blocks/dbacc/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/kernel/blocks/dbacc/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1035,10 +993,10 @@ diff -r 1270c564d514 ndb/src/kernel/blocks/dbacc/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/kernel/blocks/dbdict/Makefile.in --- - a/ndb/src/kernel/blocks/dbdict/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/kernel/blocks/dbdict/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1046,10 +1004,10 @@ diff -r 1270c564d514 ndb/src/kernel/blocks/dbdict/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/kernel/blocks/dbdih/Makefile.in --- - a/ndb/src/kernel/blocks/dbdih/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/kernel/blocks/dbdih/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1057,10 +1015,10 @@ diff -r 1270c564d514 ndb/src/kernel/blocks/dbdih/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/kernel/blocks/dblqh/Makefile.in --- - a/ndb/src/kernel/blocks/dblqh/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/kernel/blocks/dblqh/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1068,10 +1026,10 @@ diff -r 1270c564d514 ndb/src/kernel/blocks/dblqh/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/kernel/blocks/dbtc/Makefile.in --- - a/ndb/src/kernel/blocks/dbtc/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/kernel/blocks/dbtc/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1079,10 +1037,10 @@ diff -r 1270c564d514 ndb/src/kernel/blocks/dbtc/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/kernel/blocks/dbtup/Makefile.in --- - a/ndb/src/kernel/blocks/dbtup/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/kernel/blocks/dbtup/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1090,10 +1048,10 @@ diff -r 1270c564d514 ndb/src/kernel/blocks/dbtup/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/kernel/blocks/dbtux/Makefile.in --- - a/ndb/src/kernel/blocks/dbtux/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/kernel/blocks/dbtux/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1101,10 +1059,10 @@ diff -r 1270c564d514 ndb/src/kernel/blocks/dbtux/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/kernel/blocks/dbutil/Makefile.in --- - a/ndb/src/kernel/blocks/dbutil/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/kernel/blocks/dbutil/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1112,10 +1070,10 @@ diff -r 1270c564d514 ndb/src/kernel/blocks/dbutil/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/kernel/blocks/ndbcntr/Makefile.in --- - a/ndb/src/kernel/blocks/ndbcntr/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/kernel/blocks/ndbcntr/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1123,10 +1081,10 @@ diff -r 1270c564d514 ndb/src/kernel/blocks/ndbcntr/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/kernel/blocks/ndbfs/Makefile.in --- - a/ndb/src/kernel/blocks/ndbfs/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/kernel/blocks/ndbfs/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1134,10 +1092,10 @@ diff -r 1270c564d514 ndb/src/kernel/blocks/ndbfs/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/kernel/blocks/qmgr/Makefile.in --- - a/ndb/src/kernel/blocks/qmgr/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/kernel/blocks/qmgr/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1145,10 +1103,10 @@ diff -r 1270c564d514 ndb/src/kernel/blocks/qmgr/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/kernel/blocks/suma/Makefile.in --- - a/ndb/src/kernel/blocks/suma/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/kernel/blocks/suma/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1156,10 +1114,10 @@ diff -r 1270c564d514 ndb/src/kernel/blocks/suma/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/kernel/blocks/trix/Makefile.in --- - a/ndb/src/kernel/blocks/trix/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/kernel/blocks/trix/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1167,10 +1125,10 @@ diff -r 1270c564d514 ndb/src/kernel/blocks/trix/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/kernel/error/Makefile.in --- - a/ndb/src/kernel/error/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/kernel/error/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1178,10 +1136,10 @@ diff -r 1270c564d514 ndb/src/kernel/error/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/kernel/vm/Makefile.in --- - a/ndb/src/kernel/vm/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/kernel/vm/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1189,10 +1147,10 @@ diff -r 1270c564d514 ndb/src/kernel/vm/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/mgmapi/Makefile.in --- - a/ndb/src/mgmapi/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/mgmapi/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1200,10 +1158,10 @@ diff -r 1270c564d514 ndb/src/mgmapi/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/mgmclient/Makefile.in --- - a/ndb/src/mgmclient/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/mgmclient/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1211,10 +1169,10 @@ diff -r 1270c564d514 ndb/src/mgmclient/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/mgmsrv/Makefile.in --- - a/ndb/src/mgmsrv/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/mgmsrv/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1222,10 +1180,10 @@ diff -r 1270c564d514 ndb/src/mgmsrv/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/src/ndbapi/Makefile.in --- - a/ndb/src/ndbapi/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/src/ndbapi/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1233,10 +1191,10 @@ diff -r 1270c564d514 ndb/src/ndbapi/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/test/Makefile.in --- - a/ndb/test/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/test/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1244,10 +1202,10 @@ diff -r 1270c564d514 ndb/test/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/test/ndbapi/Makefile.in --- - a/ndb/test/ndbapi/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/test/ndbapi/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1255,10 +1213,10 @@ diff -r 1270c564d514 ndb/test/ndbapi/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/test/ndbapi/bank/Makefile.in --- - a/ndb/test/ndbapi/bank/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/test/ndbapi/bank/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1266,10 +1224,10 @@ diff -r 1270c564d514 ndb/test/ndbapi/bank/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/test/run-test/Makefile.in --- - a/ndb/test/run-test/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/test/run-test/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1277,10 +1235,10 @@ diff -r 1270c564d514 ndb/test/run-test/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/test/src/Makefile.in --- - a/ndb/test/src/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/test/src/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1288,10 +1246,10 @@ diff -r 1270c564d514 ndb/test/src/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/test/tools/Makefile.in --- - a/ndb/test/tools/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/test/tools/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1299,10 +1257,10 @@ diff -r 1270c564d514 ndb/test/tools/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 ndb/tools/Makefile.in --- - a/ndb/tools/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/ndb/tools/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1310,10 +1268,10 @@ diff -r 1270c564d514 ndb/tools/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 netware/Makefile.in --- - a/netware/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/netware/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1321,10 +1279,10 @@ diff -r 1270c564d514 netware/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 os2/Makefile.in --- - a/os2/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/os2/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1332,10 +1290,10 @@ diff -r 1270c564d514 os2/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 os2/include/Makefile.in --- - a/os2/include/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/os2/include/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1343,10 +1301,10 @@ diff -r 1270c564d514 os2/include/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 os2/include/sys/Makefile.in --- - a/os2/include/sys/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/os2/include/sys/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1354,9 +1312,9 @@ diff -r 1270c564d514 os2/include/sys/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 patch_info/userstats.info +diff -r 23e5576aa59a patch_info/userstats.info --- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ b/patch_info/userstats.info Mon Dec 22 00:31:13 2008 -0800 @@ -1372,10 +1330,10 @@ diff -r 1270c564d514 patch_info/userstats.info + +2008-12-09 +YK: fixed "Row_sent: 0" problem at microslow_innodb.patch -diff -r 1270c564d514 pstack/Makefile.in --- - a/pstack/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/pstack/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1383,10 +1341,10 @@ diff -r 1270c564d514 pstack/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 pstack/aout/Makefile.in --- - a/pstack/aout/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/pstack/aout/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1394,10 +1352,10 @@ diff -r 1270c564d514 pstack/aout/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 regex/Makefile.in --- - a/regex/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/regex/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1405,10 +1363,10 @@ diff -r 1270c564d514 regex/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 scripts/Makefile.in --- - a/scripts/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/scripts/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1416,10 +1374,10 @@ diff -r 1270c564d514 scripts/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 server-tools/Makefile.in --- - a/server-tools/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/server-tools/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1427,10 +1385,10 @@ diff -r 1270c564d514 server-tools/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 server-tools/instance-manager/Makefile.in --- - a/server-tools/instance-manager/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/server-tools/instance-manager/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1438,10 +1396,10 @@ diff -r 1270c564d514 server-tools/instance-manager/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 sql/Makefile.in --- - a/sql/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/sql/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -1449,10 +1407,10 @@ diff -r 1270c564d514 sql/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 sql/ha_innodb.cc --- - a/sql/ha_innodb.cc Mon Dec 22 00:26:39 2008 -0800 +++ - a/sql/ha_innodb.cc Tue Feb 17 22:33:23 2009 -0800 @@ -1461,7 +1419,7 @@ diff -r 1270c564d514 sql/ha_innodb.cc if (error == DB_SUCCESS && auto_inc_used) { /* Fetch the value that was set in the autoincrement field */ -@@ -3588,6 +3590,8 @@ +@@ -3596,6 +3598,8 @@ } } @@ -1470,7 +1428,7 @@ diff -r 1270c564d514 sql/ha_innodb.cc innodb_srv_conc_exit_innodb(prebuilt->trx); error = convert_error_code_to_mysql(error, user_thd); -@@ -3635,6 +3639,8 @@ +@@ -3643,6 +3647,8 @@ innodb_srv_conc_enter_innodb(prebuilt->trx); error = row_update_for_mysql((byte*) record, prebuilt); @@ -1479,7 +1437,7 @@ diff -r 1270c564d514 sql/ha_innodb.cc innodb_srv_conc_exit_innodb(prebuilt->trx); -@@ -4068,6 +4074,9 @@ +@@ -4076,6 +4082,9 @@ if (ret == DB_SUCCESS) { error = 0; table->status = 0; @@ -1489,9 +1447,9 @@ diff -r 1270c564d514 sql/ha_innodb.cc } else if (ret == DB_RECORD_NOT_FOUND) { error = HA_ERR_END_OF_FILE; -diff -r 1270c564d514 sql/ha_myisam.cc --- - a/sql/ha_myisam.cc Mon Dec 22 00:26:39 2008 -0800 +++ - a/sql/ha_myisam.cc Tue Feb 17 22:33:23 2009 -0800 @@ -1651,9 +1609,9 @@ diff -r 1270c564d514 sql/ha_myisam.cc return error; } -diff -r 1270c564d514 sql/handler.cc --- - a/sql/handler.cc Mon Dec 22 00:26:39 2008 -0800 +++ - a/sql/handler.cc Tue Feb 17 22:33:23 2009 -0800 @@ -1800,9 +1758,9 @@ diff -r 1270c564d514 sql/handler.cc /**************************************************************************** ** Some general functions that isn't in the handler class -diff -r 1270c564d514 sql/handler.h --- - a/sql/handler.h Mon Dec 22 00:26:39 2008 -0800 +++ - a/sql/handler.h Tue Feb 17 22:33:23 2009 -0800 @@ -1860,9 +1818,9 @@ diff -r 1270c564d514 sql/handler.h /* default rename_table() and delete_table() rename/delete files with a given name and extensions from bas_ext() -diff -r 1270c564d514 sql/lex.h --- - a/sql/lex.h Mon Dec 22 00:26:39 2008 -0800 +++ - a/sql/lex.h Tue Feb 17 22:33:23 2009 -0800 @@ -1903,10 +1861,10 @@ diff -r 1270c564d514 sql/lex.h { "USE_FRM", SYM(USE_FRM)}, { "USING", SYM(USING)}, { "UTC_DATE", SYM(UTC_DATE_SYM)}, -diff -r 1270c564d514 sql/log.cc --- - a/sql/log.cc Mon Dec 22 00:26:39 2008 -0800 +++ - a/sql/log.cc Tue Feb 17 22:33:23 2009 -0800 @@ -1931,7 +1889,7 @@ diff -r 1270c564d514 sql/log.cc } if (thd->user_var_events.elements) { -@@ -1926,6 +1932,8 @@ +@@ -1981,6 +1987,8 @@ user_var_event->charset_number); if (e.write(file)) goto err; @@ -1940,7 +1898,7 @@ diff -r 1270c564d514 sql/log.cc } } } -@@ -1936,6 +1944,8 @@ +@@ -1991,6 +1999,8 @@ if (event_info->write(file)) goto err; @@ -1949,7 +1907,7 @@ diff -r 1270c564d514 sql/log.cc if (file == &log_file) // we are writing to the real log (disk) { -@@ -2057,6 +2067,7 @@ +@@ -2112,6 +2122,7 @@ */ if (qinfo.write(&log_file)) goto err; @@ -1957,7 +1915,7 @@ diff -r 1270c564d514 sql/log.cc /* Read from the file used to cache the queries .*/ if (reinit_io_cache(cache, READ_CACHE, 0, 0, 0)) -@@ -2103,6 +2114,7 @@ +@@ -2158,6 +2169,7 @@ /* write the first half of the split header */ if (my_b_write(&log_file, header, carry)) goto err; @@ -1965,7 +1923,7 @@ diff -r 1270c564d514 sql/log.cc /* copy fixed second half of header to cache so the correct -@@ -2171,6 +2183,8 @@ +@@ -2226,6 +2238,8 @@ /* Write data to the binary log file */ if (my_b_write(&log_file, cache->read_pos, length)) goto err; @@ -1974,7 +1932,7 @@ diff -r 1270c564d514 sql/log.cc cache->read_pos=cache->read_end; // Mark buffer used up DBUG_EXECUTE_IF("half_binlogged_transaction", goto DBUG_skip_commit;); } while ((length=my_b_fill(cache))); -@@ -2179,6 +2193,8 @@ +@@ -2234,6 +2248,8 @@ if (commit_event->write(&log_file)) goto err; @@ -1983,10 +1941,10 @@ diff -r 1270c564d514 sql/log.cc #ifndef DBUG_OFF DBUG_skip_commit: #endif -diff -r 1270c564d514 sql/mysql_priv.h --- - a/sql/mysql_priv.h Mon Dec 22 00:26:39 2008 -0800 +++ - a/sql/mysql_priv.h Tue Feb 17 22:33:23 2009 -0800 @@ -2002,7 +1960,7 @@ diff -r 1270c564d514 sql/mysql_priv.h pthread_handler_t handle_one_connection(void *arg); pthread_handler_t handle_bootstrap(void *arg); void end_thread(THD *thd,bool put_in_cache); -@@ -1396,6 +1404,7 @@ +@@ -1402,6 +1410,7 @@ extern ulong max_connections,max_connect_errors, connect_timeout; extern ulong slave_net_timeout, slave_trans_retries; extern uint max_user_connections; @@ -2010,7 +1968,7 @@ diff -r 1270c564d514 sql/mysql_priv.h extern ulong what_to_log,flush_time; extern ulong query_buff_size, thread_stack; extern ulong max_prepared_stmt_count, prepared_stmt_count; -@@ -1426,6 +1435,7 @@ +@@ -1432,6 +1441,7 @@ extern my_bool opt_safe_show_db, opt_local_infile; extern my_bool opt_slave_compressed_protocol, use_temp_pool; extern my_bool opt_readonly, lower_case_file_system; @@ -2018,7 +1976,7 @@ diff -r 1270c564d514 sql/mysql_priv.h extern my_bool opt_enable_named_pipe, opt_sync_frm, opt_allow_suspicious_udfs; extern my_bool opt_secure_auth; extern char* opt_secure_file_priv; -@@ -1472,6 +1482,14 @@ +@@ -1479,6 +1489,14 @@ extern struct system_variables max_system_variables; extern struct system_status_var global_status_var; extern struct rand_struct sql_rand; @@ -2033,10 +1991,10 @@ diff -r 1270c564d514 sql/mysql_priv.h extern const char *opt_date_time_formats[]; extern KNOWN_DATE_TIME_FORMAT known_date_time_formats[]; -diff -r 1270c564d514 sql/mysqld.cc --- - a/sql/mysqld.cc Mon Dec 22 00:26:39 2008 -0800 +++ - a/sql/mysqld.cc Tue Feb 17 22:33:23 2009 -0800 @@ -2044,7 +2002,7 @@ diff -r 1270c564d514 sql/mysqld.cc /* True if there is at least one per-hour limit for some user, so we should check them before each query (and possibly reset counters when hour is -@@ -450,6 +451,7 @@ +@@ -451,6 +452,7 @@ ulong binlog_cache_use= 0, binlog_cache_disk_use= 0; ulong max_connections, max_connect_errors; uint max_user_connections= 0; @@ -2052,7 +2010,7 @@ diff -r 1270c564d514 sql/mysqld.cc /* Limit of the total number of prepared statements in the server. Is necessary to protect the server against out-of-memory attacks. -@@ -550,6 +552,10 @@ +@@ -551,6 +553,10 @@ LOCK_crypt, LOCK_bytes_sent, LOCK_bytes_received, LOCK_global_system_variables, LOCK_user_conn, LOCK_slave_list, LOCK_active_mi; @@ -2063,7 +2021,7 @@ diff -r 1270c564d514 sql/mysqld.cc /* The below lock protects access to two global server variables: max_prepared_stmt_count and prepared_stmt_count. These variables -@@ -1191,6 +1197,10 @@ +@@ -1192,6 +1198,10 @@ x_free(opt_secure_file_priv); bitmap_free(&temp_pool); free_max_user_conn(); @@ -2074,7 +2032,7 @@ diff -r 1270c564d514 sql/mysqld.cc #ifdef HAVE_REPLICATION end_slave_list(); free_list(&replicate_do_db); -@@ -1305,6 +1315,10 @@ +@@ -1306,6 +1316,10 @@ (void) pthread_cond_destroy(&COND_thread_cache); (void) pthread_cond_destroy(&COND_flush_thread_cache); (void) pthread_cond_destroy(&COND_manager); @@ -2085,7 +2043,7 @@ diff -r 1270c564d514 sql/mysqld.cc } #endif /*EMBEDDED_LIBRARY*/ -@@ -3152,6 +3166,10 @@ +@@ -3153,6 +3167,10 @@ (void) pthread_mutex_init(&LOCK_rpl_status, MY_MUTEX_INIT_FAST); (void) pthread_cond_init(&COND_rpl_status, NULL); #endif @@ -2096,7 +2054,7 @@ diff -r 1270c564d514 sql/mysqld.cc sp_cache_init(); /* Parameter for threads created for connections */ (void) pthread_attr_init(&connection_attrib); -@@ -3423,6 +3441,10 @@ +@@ -3424,6 +3442,10 @@ sql_print_error("Out of memory"); unireg_abort(1); } @@ -2107,7 +2065,7 @@ diff -r 1270c564d514 sql/mysqld.cc if (ha_init()) { sql_print_error("Can't init databases"); -@@ -3505,6 +3527,8 @@ +@@ -3506,6 +3528,8 @@ init_max_user_conn(); init_update_queries(); @@ -2116,7 +2074,7 @@ diff -r 1270c564d514 sql/mysqld.cc DBUG_RETURN(0); } -@@ -4189,6 +4213,7 @@ +@@ -4232,6 +4256,7 @@ { DBUG_PRINT("error",("Too many connections")); close_connection(thd, ER_CON_COUNT_ERROR, 1); @@ -2124,7 +2082,7 @@ diff -r 1270c564d514 sql/mysqld.cc delete thd; DBUG_VOID_RETURN; } -@@ -5007,6 +5032,7 @@ +@@ -5050,6 +5075,7 @@ OPT_PROFILING, OPT_SLOW_LOG, OPT_SLOW_QUERY_LOG_FILE, @@ -2132,7 +2090,7 @@ diff -r 1270c564d514 sql/mysqld.cc OPT_USE_GLOBAL_LONG_QUERY_TIME, OPT_INNODB_ROLLBACK_ON_TIMEOUT, OPT_SECURE_FILE_PRIV, -@@ -6450,6 +6476,10 @@ +@@ -6498,6 +6524,10 @@ (gptr*) &max_system_variables.net_wait_timeout, 0, GET_ULONG, REQUIRED_ARG, NET_WAIT_TIMEOUT, 1, IF_WIN(INT_MAX32/1000, LONG_TIMEOUT), 0, 1, 0}, @@ -2143,10 +2101,10 @@ diff -r 1270c564d514 sql/mysqld.cc {0, 0, 0, 0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0} }; -diff -r 1270c564d514 sql/set_var.cc --- - a/sql/set_var.cc Mon Dec 22 00:26:39 2008 -0800 +++ - a/sql/set_var.cc Tue Feb 17 22:33:23 2009 -0800 @@ -2154,7 +2112,7 @@ diff -r 1270c564d514 sql/set_var.cc sys_var_thd_ulong sys_read_rnd_buff_size("read_rnd_buffer_size", &SV::read_rnd_buff_size); sys_var_thd_ulong sys_div_precincrement("div_precision_increment", -@@ -825,6 +826,7 @@ +@@ -828,6 +829,7 @@ &sys_trans_alloc_block_size, &sys_trans_prealloc_size, &sys_tx_isolation, @@ -2162,7 +2120,7 @@ diff -r 1270c564d514 sql/set_var.cc &sys_version, #ifdef HAVE_BERKELEY_DB &sys_version_bdb, -@@ -1171,6 +1173,7 @@ +@@ -1174,6 +1176,7 @@ {sys_tx_isolation.name, (char*) &sys_tx_isolation, SHOW_SYS}, {sys_updatable_views_with_limit.name, (char*) &sys_updatable_views_with_limit,SHOW_SYS}, @@ -2170,10 +2128,10 @@ diff -r 1270c564d514 sql/set_var.cc {sys_use_global_long_query_time.name, (char*) &sys_use_global_long_query_time, SHOW_SYS}, {sys_version.name, (char*) &sys_version, SHOW_SYS}, #ifdef HAVE_BERKELEY_DB -diff -r 1270c564d514 sql/share/Makefile.in --- - a/sql/share/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/sql/share/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -2181,9 +2139,9 @@ diff -r 1270c564d514 sql/share/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 sql/sql_base.cc --- - a/sql/sql_base.cc Mon Dec 22 00:26:39 2008 -0800 +++ - a/sql/sql_base.cc Tue Feb 17 22:33:23 2009 -0800 @@ -2207,9 +2165,9 @@ diff -r 1270c564d514 sql/sql_base.cc db_type table_type=table->s->db_type; strmov(path,table->s->path); free_io_cache(table); -diff -r 1270c564d514 sql/sql_class.cc --- - a/sql/sql_class.cc Mon Dec 22 00:26:39 2008 -0800 +++ - a/sql/sql_class.cc Tue Feb 17 22:33:23 2009 -0800 @@ -2389,10 +2347,10 @@ diff -r 1270c564d514 sql/sql_class.cc } -diff -r 1270c564d514 sql/sql_class.h --- - a/sql/sql_class.h Mon Dec 22 00:26:39 2008 -0800 +++ - a/sql/sql_class.h Tue Feb 17 22:33:23 2009 -0800 @@ -2401,7 +2359,7 @@ diff -r 1270c564d514 sql/sql_class.h uint32 server_id; uint32 file_id; // for LOAD DATA INFILE /* -@@ -1487,6 +1489,8 @@ +@@ -1488,6 +1490,8 @@ /* variables.transaction_isolation is reset to this after each commit */ enum_tx_isolation session_tx_isolation; enum_check_fields count_cuted_fields; @@ -2410,7 +2368,7 @@ diff -r 1270c564d514 sql/sql_class.h DYNAMIC_ARRAY user_var_events; /* For user variables replication */ MEM_ROOT *user_var_events_alloc; /* Allocate above array elements here */ -@@ -1593,6 +1597,49 @@ +@@ -1594,6 +1598,49 @@ */ LOG_INFO* current_linfo; NET* slave_net; // network connection from slave -> m. @@ -2460,7 +2418,7 @@ diff -r 1270c564d514 sql/sql_class.h /* Used by the sys_var class to store temporary values */ union { -@@ -1648,6 +1695,11 @@ +@@ -1649,6 +1696,11 @@ alloc_root. */ void init_for_queries(); @@ -2472,7 +2430,7 @@ diff -r 1270c564d514 sql/sql_class.h void change_user(void); void cleanup(void); void cleanup_after_query(); -@@ -1877,7 +1929,13 @@ +@@ -1878,7 +1930,13 @@ if (p_db_length) *p_db_length= db_length; return FALSE; @@ -2486,7 +2444,7 @@ diff -r 1270c564d514 sql/sql_class.h public: /** -@@ -1921,6 +1979,11 @@ +@@ -1922,6 +1980,11 @@ MEM_ROOT main_mem_root; }; @@ -2498,9 +2456,9 @@ diff -r 1270c564d514 sql/sql_class.h #define tmp_disable_binlog(A) \ {ulonglong tmp_disable_binlog__save_options= (A)->options; \ -diff -r 1270c564d514 sql/sql_delete.cc --- - a/sql/sql_delete.cc Mon Dec 22 00:26:39 2008 -0800 +++ - a/sql/sql_delete.cc Tue Feb 17 22:33:23 2009 -0800 @@ -2517,9 +2475,9 @@ diff -r 1270c564d514 sql/sql_delete.cc return 0; } -diff -r 1270c564d514 sql/sql_insert.cc --- - a/sql/sql_insert.cc Mon Dec 22 00:26:39 2008 -0800 +++ - a/sql/sql_insert.cc Tue Feb 17 22:33:23 2009 -0800 @@ -2536,9 +2494,9 @@ diff -r 1270c564d514 sql/sql_insert.cc DBUG_RETURN(0); } -diff -r 1270c564d514 sql/sql_lex.h --- - a/sql/sql_lex.h Mon Dec 22 00:26:39 2008 -0800 +++ - a/sql/sql_lex.h Tue Feb 17 22:33:23 2009 -0800 @@ -2549,9 +2507,9 @@ diff -r 1270c564d514 sql/sql_lex.h /* This should be the last !!! */ SQLCOM_END }; -diff -r 1270c564d514 sql/sql_parse.cc --- - a/sql/sql_parse.cc Mon Dec 22 00:26:39 2008 -0800 +++ - a/sql/sql_parse.cc Tue Feb 17 22:33:23 2009 -0800 @@ -3040,7 +2998,7 @@ diff -r 1270c564d514 sql/sql_parse.cc /* Reset per-hour user resource limits when it has been more than an hour since they were last checked -@@ -1184,6 +1607,8 @@ +@@ -1184,6 +1610,8 @@ my_net_set_read_timeout(net, connect_timeout); my_net_set_write_timeout(net, connect_timeout); @@ -3049,7 +3007,7 @@ diff -r 1270c564d514 sql/sql_parse.cc if ((error=check_connection(thd))) { // Wrong permissions if (error > 0) -@@ -1193,8 +1618,22 @@ +@@ -1193,8 +1621,22 @@ my_sleep(1000); /* must wait after eof() */ #endif statistic_increment(aborted_connects,&LOCK_status); @@ -3072,7 +3030,7 @@ diff -r 1270c564d514 sql/sql_parse.cc #ifdef __NETWARE__ netware_reg_user(sctx->ip, sctx->user, "MySQL"); #endif -@@ -1251,6 +1690,7 @@ +@@ -1251,6 +1693,7 @@ net->vio && net->error && net->report_error) { statistic_increment(aborted_threads, &LOCK_status); @@ -3080,7 +3038,7 @@ diff -r 1270c564d514 sql/sql_parse.cc } if (net->error && net->vio != 0 && net->report_error) -@@ -1270,6 +1710,8 @@ +@@ -1270,6 +1713,8 @@ end_thread: close_connection(thd, 0, 1); @@ -3089,7 +3047,7 @@ diff -r 1270c564d514 sql/sql_parse.cc end_thread(thd,1); /* If end_thread returns, we are either running with --one-thread -@@ -1601,6 +2043,13 @@ +@@ -1601,6 +2046,13 @@ thd->clear_error(); // Clear error message @@ -3103,7 +3061,7 @@ diff -r 1270c564d514 sql/sql_parse.cc net_new_transaction(net); packet_length= my_net_read(net); -@@ -1759,6 +2208,9 @@ +@@ -1759,6 +2211,9 @@ } thd->command=command; @@ -3113,7 +3071,7 @@ diff -r 1270c564d514 sql/sql_parse.cc /* Commands which always take a long time are logged into the slow log only if opt_log_slow_admin_statements is set. -@@ -4424,6 +4876,15 @@ +@@ -4428,6 +4883,15 @@ if (check_global_access(thd,RELOAD_ACL)) goto error; @@ -3129,7 +3087,7 @@ diff -r 1270c564d514 sql/sql_parse.cc /* reload_acl_and_cache() will tell us if we are allowed to write to the binlog or not. -@@ -4731,6 +5192,7 @@ +@@ -4735,6 +5199,7 @@ { if (check_global_access(thd, SUPER_ACL)) { @@ -3137,7 +3095,7 @@ diff -r 1270c564d514 sql/sql_parse.cc my_error(ER_SPECIFIC_ACCESS_DENIED_ERROR, MYF(0), "SUPER"); goto create_sp_error; } -@@ -5567,6 +6029,7 @@ +@@ -5571,6 +6036,7 @@ if (!no_errors) { const char *db_name= db ? db : thd->db; @@ -3145,7 +3103,7 @@ diff -r 1270c564d514 sql/sql_parse.cc my_error(ER_DBACCESS_DENIED_ERROR, MYF(0), sctx->priv_user, sctx->priv_host, db_name); } -@@ -5602,6 +6065,7 @@ +@@ -5606,6 +6072,7 @@ { // We can never grant this DBUG_PRINT("error",("No possible access")); if (!no_errors) @@ -3153,7 +3111,7 @@ diff -r 1270c564d514 sql/sql_parse.cc my_error(ER_ACCESS_DENIED_ERROR, MYF(0), sctx->priv_user, sctx->priv_host, -@@ -5634,11 +6098,15 @@ +@@ -5638,11 +6105,15 @@ DBUG_PRINT("error",("Access denied")); if (!no_errors) @@ -3169,7 +3127,7 @@ diff -r 1270c564d514 sql/sql_parse.cc DBUG_RETURN(TRUE); /* purecov: tested */ #endif /* NO_EMBEDDED_ACCESS_CHECKS */ } -@@ -5672,6 +6140,7 @@ +@@ -5676,6 +6147,7 @@ if ((thd->security_ctx->master_access & want_access)) return 0; get_privilege_desc(command, sizeof(command), want_access); @@ -3177,7 +3135,7 @@ diff -r 1270c564d514 sql/sql_parse.cc my_error(ER_SPECIFIC_ACCESS_DENIED_ERROR, MYF(0), command); return 1; #endif /* NO_EMBEDDED_ACCESS_CHECKS */ -@@ -5704,6 +6173,7 @@ +@@ -5708,6 +6180,7 @@ if (!thd->col_access && check_grant_db(thd, dst_db_name)) { @@ -3185,7 +3143,7 @@ diff -r 1270c564d514 sql/sql_parse.cc my_error(ER_DBACCESS_DENIED_ERROR, MYF(0), thd->security_ctx->priv_user, thd->security_ctx->priv_host, -@@ -5735,6 +6205,12 @@ +@@ -5739,6 +6212,12 @@ check_grant(thd, SELECT_ACL, dst_table, 2, UINT_MAX, FALSE); } @@ -3198,7 +3156,7 @@ diff -r 1270c564d514 sql/sql_parse.cc case SCH_OPEN_TABLES: case SCH_VARIABLES: case SCH_STATUS: -@@ -5788,8 +6264,8 @@ +@@ -5792,8 +6271,8 @@ #ifndef NO_EMBEDDED_ACCESS_CHECKS TABLE_LIST *org_tables= tables; #endif @@ -3208,7 +3166,7 @@ diff -r 1270c564d514 sql/sql_parse.cc /* The check that first_not_own_table is not reached is for the case when the given table list refers to the list for prelocking (contains tables -@@ -5806,9 +6282,12 @@ +@@ -5810,9 +6289,12 @@ (want_access & ~(SELECT_ACL | EXTRA_ACL | FILE_ACL))) { if (!no_errors) @@ -3221,7 +3179,7 @@ diff -r 1270c564d514 sql/sql_parse.cc return TRUE; } /* -@@ -6317,6 +6796,30 @@ +@@ -6321,6 +6803,30 @@ */ lex_start(thd); mysql_reset_thd_for_next_command(thd); @@ -3252,7 +3210,7 @@ diff -r 1270c564d514 sql/sql_parse.cc if (query_cache_send_result_to_client(thd, (char*) inBuf, length) <= 0) { -@@ -6396,6 +6899,39 @@ +@@ -6400,6 +6906,43 @@ *found_semicolon= NULL; } @@ -3280,9 +3238,13 @@ diff -r 1270c564d514 sql/sql_parse.cc + !(cputime_error = clock_gettime(CLOCK_THREAD_CPUTIME_ID, &tp))) + end_cpu_nsecs = tp.tv_sec*1000000000.0+tp.tv_nsec; +#endif -+ if (start_cpu_nsecs && !cputime_error) ++ if (start_cpu_nsecs && !cputime_error) { + thd->cpu_time = (end_cpu_nsecs - start_cpu_nsecs) / 1000000000; -+ else ++ // In case there are bad values, 2629743 is the #seconds in a month. ++ if (thd->cpu_time > 2629743) { ++ thd->cpu_time = 0; ++ } ++ } else + thd->cpu_time = 0; + } + // Updates THD stats and the global user stats. @@ -3292,7 +3254,7 @@ diff -r 1270c564d514 sql/sql_parse.cc DBUG_VOID_RETURN; } -@@ -7407,8 +7943,35 @@ +@@ -7411,8 +7954,35 @@ pthread_mutex_unlock(&LOCK_active_mi); } #endif @@ -3330,9 +3292,9 @@ diff -r 1270c564d514 sql/sql_parse.cc *write_to_binlog= tmp_write_to_binlog; return result; } -diff -r 1270c564d514 sql/sql_prepare.cc --- - a/sql/sql_prepare.cc Mon Dec 22 00:26:39 2008 -0800 +++ - a/sql/sql_prepare.cc Tue Feb 17 22:33:23 2009 -0800 @@ -3386,7 +3348,7 @@ diff -r 1270c564d514 sql/sql_prepare.cc } /* Reset warnings from previous command */ -@@ -1941,6 +1968,40 @@ +@@ -1941,6 +1968,44 @@ thd->stmt_map.erase(stmt); } /* check_prepared_statemnt sends the metadata packet in case of success */ @@ -3415,9 +3377,13 @@ diff -r 1270c564d514 sql/sql_prepare.cc + !(cputime_error = clock_gettime(CLOCK_THREAD_CPUTIME_ID, &tp))) + end_cpu_nsecs = tp.tv_sec*1000000000.0+tp.tv_nsec; +#endif -+ if (start_cpu_nsecs && !cputime_error) ++ if (start_cpu_nsecs && !cputime_error) { + thd->cpu_time = (end_cpu_nsecs - start_cpu_nsecs) / 1000000000; -+ else ++ // In case there are bad values, 2629743 is the #seconds in a month. ++ if (thd->cpu_time > 2629743) { ++ thd->cpu_time = 0; ++ } ++ } else + thd->cpu_time = 0; + } + // Updates THD stats and the global user stats. @@ -3427,7 +3393,7 @@ diff -r 1270c564d514 sql/sql_prepare.cc DBUG_VOID_RETURN; } -@@ -2281,8 +2342,32 @@ +@@ -2281,8 +2346,32 @@ /* First of all clear possible warnings from the previous command */ mysql_reset_thd_for_next_command(thd); @@ -3461,7 +3427,7 @@ diff -r 1270c564d514 sql/sql_prepare.cc #ifdef ENABLED_PROFILING thd->profiling.set_query_source(stmt->query, stmt->query_length); -@@ -2325,11 +2410,46 @@ +@@ -2325,11 +2414,50 @@ test(flags & (ulong) CURSOR_TYPE_READ_ONLY)); if (!(specialflag & SPECIAL_NO_PRIOR)) my_pthread_setprio(pthread_self(), WAIT_PRIOR); @@ -3497,9 +3463,13 @@ diff -r 1270c564d514 sql/sql_prepare.cc + !(cputime_error = clock_gettime(CLOCK_THREAD_CPUTIME_ID, &tp))) + end_cpu_nsecs = tp.tv_sec*1000000000.0+tp.tv_nsec; +#endif -+ if (start_cpu_nsecs && !cputime_error) ++ if (start_cpu_nsecs && !cputime_error) { + thd->cpu_time = (end_cpu_nsecs - start_cpu_nsecs) / 1000000000; -+ else ++ // In case there are bad values, 2629743 is the #seconds in a month. ++ if (thd->cpu_time > 2629743) { ++ thd->cpu_time = 0; ++ } ++ } else + thd->cpu_time = 0; + } + // Updates THD stats and the global user stats. @@ -3509,7 +3479,7 @@ diff -r 1270c564d514 sql/sql_prepare.cc DBUG_VOID_RETURN; } -@@ -2423,6 +2543,31 @@ +@@ -2423,6 +2551,31 @@ /* First of all clear possible warnings from the previous command */ mysql_reset_thd_for_next_command(thd); @@ -3541,7 +3511,7 @@ diff -r 1270c564d514 sql/sql_prepare.cc statistic_increment(thd->status_var.com_stmt_fetch, &LOCK_status); if (!(stmt= find_prepared_statement(thd, stmt_id, "mysql_stmt_fetch"))) DBUG_VOID_RETURN; -@@ -2455,6 +2600,39 @@ +@@ -2455,6 +2608,43 @@ thd->restore_backup_statement(stmt, &stmt_backup); thd->stmt_arena= thd; @@ -3569,9 +3539,13 @@ diff -r 1270c564d514 sql/sql_prepare.cc + !(cputime_error = clock_gettime(CLOCK_THREAD_CPUTIME_ID, &tp))) + end_cpu_nsecs = tp.tv_sec*1000000000.0+tp.tv_nsec; +#endif -+ if (start_cpu_nsecs && !cputime_error) ++ if (start_cpu_nsecs && !cputime_error) { + thd->cpu_time = (end_cpu_nsecs - start_cpu_nsecs) / 1000000000; -+ else ++ // In case there are bad values, 2629743 is the #seconds in a month. ++ if (thd->cpu_time > 2629743) { ++ thd->cpu_time = 0; ++ } ++ } else + thd->cpu_time = 0; + } + // Updates THD stats and the global user stats. @@ -3581,7 +3555,7 @@ diff -r 1270c564d514 sql/sql_prepare.cc DBUG_VOID_RETURN; } -@@ -2487,6 +2665,30 @@ +@@ -2487,6 +2677,30 @@ /* First of all clear possible warnings from the previous command */ mysql_reset_thd_for_next_command(thd); @@ -3612,7 +3586,7 @@ diff -r 1270c564d514 sql/sql_prepare.cc statistic_increment(thd->status_var.com_stmt_reset, &LOCK_status); if (!(stmt= find_prepared_statement(thd, stmt_id, "mysql_stmt_reset"))) DBUG_VOID_RETURN; -@@ -2502,6 +2704,39 @@ +@@ -2502,6 +2716,43 @@ stmt->state= Query_arena::PREPARED; send_ok(thd); @@ -3641,9 +3615,13 @@ diff -r 1270c564d514 sql/sql_prepare.cc + !(cputime_error = clock_gettime(CLOCK_THREAD_CPUTIME_ID, &tp))) + end_cpu_nsecs = tp.tv_sec*1000000000.0+tp.tv_nsec; +#endif -+ if (start_cpu_nsecs && !cputime_error) ++ if (start_cpu_nsecs && !cputime_error) { + thd->cpu_time = (end_cpu_nsecs - start_cpu_nsecs) / 1000000000; -+ else ++ // In case there are bad values, 2629743 is the #seconds in a month. ++ if (thd->cpu_time > 2629743) { ++ thd->cpu_time = 0; ++ } ++ } else + thd->cpu_time = 0; + } + // Updates THD stats and the global user stats. @@ -3652,9 +3630,9 @@ diff -r 1270c564d514 sql/sql_prepare.cc DBUG_VOID_RETURN; } -diff -r 1270c564d514 sql/sql_show.cc --- - a/sql/sql_show.cc Mon Dec 22 00:26:39 2008 -0800 +++ - a/sql/sql_show.cc Tue Feb 17 22:33:23 2009 -0800 @@ -3663,7 +3641,7 @@ diff -r 1270c564d514 sql/sql_show.cc my_error(ER_DBACCESS_DENIED_ERROR, MYF(0), sctx->priv_user, sctx->host_or_ip, dbname); mysql_log.write(thd,COM_INIT_DB,ER(ER_DBACCESS_DENIED_ERROR), -@@ -1858,6 +1859,300 @@ +@@ -1872,6 +1873,300 @@ DBUG_RETURN(FALSE); } @@ -3964,7 +3942,7 @@ diff -r 1270c564d514 sql/sql_show.cc /* collect status for all running threads */ -@@ -4468,6 +4763,77 @@ +@@ -4482,6 +4777,77 @@ {0, 0, MYSQL_TYPE_STRING, 0, 0, 0} }; @@ -4042,7 +4020,7 @@ diff -r 1270c564d514 sql/sql_show.cc /* Description of ST_FIELD_INFO in table.h -@@ -4477,6 +4843,8 @@ +@@ -4491,6 +4857,8 @@ { {"CHARACTER_SETS", charsets_fields_info, create_schema_table, fill_schema_charsets, make_character_sets_old_format, 0, -1, -1, 0}, @@ -4051,7 +4029,7 @@ diff -r 1270c564d514 sql/sql_show.cc {"COLLATIONS", collation_fields_info, create_schema_table, fill_schema_collation, make_old_format, 0, -1, -1, 0}, {"COLLATION_CHARACTER_SET_APPLICABILITY", coll_charset_app_fields_info, -@@ -4485,6 +4853,8 @@ +@@ -4499,6 +4867,8 @@ get_all_tables, make_columns_old_format, get_schema_column_record, 1, 2, 0}, {"COLUMN_PRIVILEGES", column_privileges_fields_info, create_schema_table, fill_schema_column_privileges, 0, 0, -1, -1, 0}, @@ -4060,7 +4038,7 @@ diff -r 1270c564d514 sql/sql_show.cc {"KEY_COLUMN_USAGE", key_column_usage_fields_info, create_schema_table, get_all_tables, 0, get_schema_key_column_usage_record, 4, 5, 0}, {"OPEN_TABLES", open_tables_fields_info, create_schema_table, -@@ -4510,10 +4880,14 @@ +@@ -4524,10 +4894,14 @@ get_all_tables, make_table_names_old_format, 0, 1, 2, 1}, {"TABLE_PRIVILEGES", table_privileges_fields_info, create_schema_table, fill_schema_table_privileges, 0, 0, -1, -1, 0}, @@ -4075,9 +4053,9 @@ diff -r 1270c564d514 sql/sql_show.cc {"VARIABLES", variables_fields_info, create_schema_table, fill_variables, make_old_format, 0, -1, -1, 1}, {"VIEWS", view_fields_info, create_schema_table, -diff -r 1270c564d514 sql/sql_update.cc --- - a/sql/sql_update.cc Mon Dec 22 00:26:39 2008 -0800 +++ - a/sql/sql_update.cc Tue Feb 17 22:33:23 2009 -0800 @@ -4095,9 +4073,9 @@ diff -r 1270c564d514 sql/sql_update.cc + thd->updated_row_count += thd->row_count_func; return FALSE; } -diff -r 1270c564d514 sql/sql_yacc.yy --- - a/sql/sql_yacc.yy Mon Dec 22 00:26:39 2008 -0800 +++ - a/sql/sql_yacc.yy Tue Feb 17 22:33:23 2009 -0800 @@ -4233,9 +4211,9 @@ diff -r 1270c564d514 sql/sql_yacc.yy | USE_FRM {} | VARIABLES {} | VIEW_SYM {} -diff -r 1270c564d514 sql/structs.h --- - a/sql/structs.h Mon Dec 22 00:26:39 2008 -0800 +++ - a/sql/structs.h Tue Feb 17 22:33:23 2009 -0800 @@ -4335,9 +4313,9 @@ diff -r 1270c564d514 sql/structs.h /* Bits in form->update */ #define REG_MAKE_DUPP 1 /* Make a copy of record when read */ #define REG_NEW_RECORD 2 /* Write a new record if not found */ -diff -r 1270c564d514 sql/table.h --- - a/sql/table.h Mon Dec 22 00:26:39 2008 -0800 +++ - a/sql/table.h Tue Feb 17 22:33:23 2009 -0800 @@ -4362,10 +4340,10 @@ diff -r 1270c564d514 sql/table.h SCH_VARIABLES, SCH_VIEWS }; -diff -r 1270c564d514 strings/Makefile.in --- - a/strings/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/strings/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -4373,10 +4351,10 @@ diff -r 1270c564d514 strings/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 support-files/MacOSX/Makefile.in --- - a/support-files/MacOSX/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/support-files/MacOSX/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -4384,10 +4362,10 @@ diff -r 1270c564d514 support-files/MacOSX/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 support-files/Makefile.in --- - a/support-files/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/support-files/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -4395,10 +4373,10 @@ diff -r 1270c564d514 support-files/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 support-files/RHEL4-SElinux/Makefile.in --- - a/support-files/RHEL4-SElinux/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/support-files/RHEL4-SElinux/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -4406,10 +4384,10 @@ diff -r 1270c564d514 support-files/RHEL4-SElinux/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 tests/Makefile.in --- - a/tests/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/tests/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -4417,10 +4395,10 @@ diff -r 1270c564d514 tests/Makefile.in LIBS = @CLIENT_LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 tools/Makefile.in --- - a/tools/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/tools/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -4428,10 +4406,10 @@ diff -r 1270c564d514 tools/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 vio/Makefile.in --- - a/vio/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/vio/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -4439,10 +4417,10 @@ diff -r 1270c564d514 vio/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 win/Makefile.in --- - a/win/Makefile.in Mon Dec 22 00:26:39 2008 -0800 +++ - a/win/Makefile.in Tue Feb 17 22:33:23 2009 -0800 @@ -4450,10 +4428,10 @@ diff -r 1270c564d514 win/Makefile.in LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@ -diff -r 1270c564d514 zlib/Makefile.in --- a/1008_all_innodb_locks_held-percona-5.0.75-b12.patch Mon Dec 22 00:26:39 2008 -0800 +++ a/1008_all_innodb_locks_held-percona-5.0.75-b12.patch Tue Feb 17 22:33:23 2009 -0800 @@ -1,6 +1,6 @@ -diff -r ae6708ab17e5 innobase/include/srv0srv.h --- - a/innobase/include/srv0srv.h Mon Dec 22 00:32:07 2008 -0800 +++ - a/innobase/include/srv0srv.h Tue Feb 17 22:33:47 2009 -0800 @@ -10,9 +10,9 @@ diff -r ae6708ab17e5 innobase/include/srv0srv.h extern byte srv_latin1_ordering[256];/* The sort order table of the latin1 character set */ -diff -r ae6708ab17e5 innobase/lock/lock0lock.c --- - a/innobase/lock/lock0lock.c Mon Dec 22 00:32:07 2008 -0800 +++ - a/innobase/lock/lock0lock.c Tue Feb 17 22:33:47 2009 -0800 @@ -50,9 +50,9 @@ diff -r ae6708ab17e5 innobase/lock/lock0lock.c file); nth_trx++; -diff -r ae6708ab17e5 innobase/srv/srv0srv.c --- - a/innobase/srv/srv0srv.c Mon Dec 22 00:32:07 2008 -0800 +++ - a/innobase/srv/srv0srv.c Tue Feb 17 22:33:47 2009 -0800 @@ -62,7 +62,7 @@ diff -r ae6708ab17e5 innobase/srv/srv0srv.c byte srv_latin1_ordering[256] /* The sort order table of the latin1 character set. The following table is -@@ -1694,24 +1696,6 @@ +@@ -1703,24 +1705,6 @@ mutex_exit(&dict_foreign_err_mutex); @@ -87,10 +87,11 @@ diff -r ae6708ab17e5 innobase/srv/srv0srv.c fputs("--------\n" "FILE I/O\n" "--------\n", file); -@@ -1805,6 +1789,25 @@ +@@ -1813,6 +1797,25 @@ + srv_n_rows_updated_old = srv_n_rows_updated; srv_n_rows_deleted_old = srv_n_rows_deleted; srv_n_rows_read_old = srv_n_rows_read; - ++ + lock_print_info_summary(file); + if (trx_start) { + long t = ftell(file); @@ -109,13 +110,12 @@ diff -r ae6708ab17e5 innobase/srv/srv0srv.c + *trx_end = (ulint) t; + } + } -+ + fputs("----------------------------\n" "END OF INNODB MONITOR OUTPUT\n" - "============================\n", file); -diff -r ae6708ab17e5 libmysqld/set_var.cc --- - a/libmysqld/set_var.cc Mon Dec 22 00:32:07 2008 -0800 +++ - a/libmysqld/set_var.cc Tue Feb 17 22:33:47 2009 -0800 @@ -134,9 +134,9 @@ diff -r ae6708ab17e5 libmysqld/set_var.cc {"innodb_flush_method", (char*) &innobase_unix_file_flush_method, SHOW_CHAR_PTR}, {"innodb_force_recovery", (char*) &innobase_force_recovery, SHOW_LONG }, {"innodb_lock_wait_timeout", (char*) &innobase_lock_wait_timeout, SHOW_LONG }, -diff -r ae6708ab17e5 patch_info/innodb_locks_held.info +diff -r 7d3d7786b927 patch_info/innodb_locks_held.info --- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ b/patch_info/innodb_locks_held.info Mon Dec 22 00:32:58 2008 -0800 @@ -144,22 +144,22 @@ diff -r ae6708ab17e5 patch_info/innodb_locks_held.info +Author=Baron Schwartz +License=GPL +Comment=Bug #29126 fix -diff -r ae6708ab17e5 sql/ha_innodb.h --- - a/sql/mysqld.cc Mon Dec 22 00:32:07 2008 -0800 +++ - a/sql/mysqld.cc Tue Feb 17 22:33:47 2009 -0800 @@ -168,7 +168,7 @@ diff -r ae6708ab17e5 sql/mysqld.cc OPT_INNODB_THREAD_CONCURRENCY, OPT_INNODB_COMMIT_CONCURRENCY, OPT_INNODB_FORCE_RECOVERY, -@@ -5308,6 +5310,14 @@ +@@ -5356,6 +5358,14 @@ (gptr*) &srv_flush_log_at_trx_commit, (gptr*) &srv_flush_log_at_trx_commit, 0, GET_ULONG, OPT_ARG, 1, 0, 2, 0, 0, 0}, @@ -183,11 +183,11 @@ diff -r ae6708ab17e5 sql/mysqld.cc {"innodb_flush_method", OPT_INNODB_FLUSH_METHOD, "With which method to flush data.", (gptr*) &innobase_unix_file_flush_method, (gptr*) &innobase_unix_file_flush_method, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, -diff -r ae6708ab17e5 sql/set_var.cc --- - a/sql/set_var.cc Mon Dec 22 00:32:07 2008 -0800 +++ - a/sql/set_var.cc Tue Feb 17 22:33:47 2009 -0800 @@ -199,8 +199,8 @@ diff -r ae6708ab17e5 sql/set_var.cc sys_var_const_os_str_ptr sys_innodb_data_file_path("innodb_data_file_path", &innobase_data_file_path); sys_var_const_os_str_ptr sys_innodb_data_home_dir("innodb_data_home_dir", -@@ -862,6 +868,8 @@ - &sys_innodb_io_capacity, +@@ -893,6 +899,8 @@ + &sys_innodb_flush_neighbor_pages, &sys_innodb_read_ahead, &sys_innodb_adaptive_checkpoint, + &sys_innodb_show_locks_held, @@ -208,7 +208,7 @@ diff -r ae6708ab17e5 sql/set_var.cc #endif &sys_trust_routine_creators, &sys_trust_function_creators, -@@ -977,6 +985,8 @@ +@@ -1008,6 +1016,8 @@ {"innodb_file_io_threads", (char*) &innobase_file_io_threads, SHOW_LONG }, {"innodb_file_per_table", (char*) &innobase_file_per_table, SHOW_MY_BOOL}, {sys_innodb_flush_log_at_trx_commit.name, (char*) &sys_innodb_flush_log_at_trx_commit, SHOW_SYS}, --- a/1012_all_innodb_io_pattern-percona-5.0.75-b12.patch +++ a/1012_all_innodb_io_pattern-percona-5.0.75-b12.patch @@ -1,6 +1,6 @@ -diff -r 2bbfde0e0e70 include/mysql_com.h --- - a/include/mysql_com.h Mon Dec 22 00:33:11 2008 -0800 +++ - a/include/mysql_com.h Tue Feb 17 22:33:58 2009 -0800 @@ -11,9 +11,9 @@ diff -r 2bbfde0e0e70 include/mysql_com.h #define CLIENT_LONG_PASSWORD 1 /* new more secure passwords */ #define CLIENT_FOUND_ROWS 2 /* Found instead of affected rows */ -diff -r 2bbfde0e0e70 innobase/buf/buf0buf.c --- - a/innobase/buf/buf0buf.c Mon Dec 22 00:33:11 2008 -0800 +++ - a/innobase/buf/buf0buf.c Tue Feb 17 22:33:58 2009 -0800 @@ -147,9 +147,9 @@ diff -r 2bbfde0e0e70 innobase/buf/buf0buf.c + } + mutex_exit(&(buf_pool->mutex)); +} -diff -r 2bbfde0e0e70 innobase/include/buf0buf.h --- - a/innobase/include/buf0buf.h Mon Dec 22 00:33:11 2008 -0800 +++ - a/innobase/include/buf0buf.h Tue Feb 17 22:33:58 2009 -0800 @@ -195,9 +195,9 @@ diff -r 2bbfde0e0e70 innobase/include/buf0buf.h /* States of a control block */ #define BUF_BLOCK_NOT_USED 211 /* is in the free list */ #define BUF_BLOCK_READY_FOR_USE 212 /* when buf_get_free_block returns -diff -r 2bbfde0e0e70 innobase/include/buf0types.h --- - a/innobase/include/buf0types.h Mon Dec 22 00:33:11 2008 -0800 +++ - a/innobase/include/buf0types.h Tue Feb 17 22:33:58 2009 -0800 @@ -207,12 +207,12 @@ diff -r 2bbfde0e0e70 innobase/include/buf0types.h /* The 'type' used of a buffer frame */ typedef byte buf_frame_t; -diff -r 2bbfde0e0e70 innobase/include/srv0srv.h --- - a/innobase/include/srv0srv.h Mon Dec 22 00:33:11 2008 -0800 +++ - a/innobase/include/srv0srv.h Tue Feb 17 22:33:58 2009 -0800 @@ -222,12 +222,12 @@ diff -r 2bbfde0e0e70 innobase/include/srv0srv.h /*-------------------------------------------*/ extern ulint srv_n_rows_inserted; -diff -r 2bbfde0e0e70 innobase/srv/srv0srv.c --- - a/innobase/srv/srv0srv.c Mon Dec 22 00:33:11 2008 -0800 +++ - a/innobase/srv/srv0srv.c Tue Feb 17 22:33:58 2009 -0800 @@ -237,9 +237,9 @@ diff -r 2bbfde0e0e70 innobase/srv/srv0srv.c /*-------------------------------------------*/ ulong srv_n_spin_wait_rounds = 20; ulong srv_n_free_tickets_to_enter = 500; -diff -r 2bbfde0e0e70 mysql-test/r/information_schema.result --- - a/mysql-test/r/information_schema.result Mon Dec 22 00:33:11 2008 -0800 +++ - a/mysql-test/r/information_schema.result Tue Feb 17 22:33:58 2009 -0800 @@ -296,9 +296,9 @@ diff -r 2bbfde0e0e70 mysql-test/r/information_schema.result KEY_COLUMN_USAGE information_schema.KEY_COLUMN_USAGE 1 PROCESSLIST information_schema.PROCESSLIST 1 PROFILING information_schema.PROFILING 1 -diff -r 2bbfde0e0e70 mysql-test/r/information_schema_db.result --- - a/mysql-test/r/information_schema_db.result Mon Dec 22 00:33:11 2008 -0800 +++ - a/mysql-test/r/information_schema_db.result Tue Feb 17 22:33:58 2009 -0800 @@ -307,9 +307,9 @@ diff -r 2bbfde0e0e70 mysql-test/r/information_schema_db.result show tables from INFORMATION_SCHEMA like 'T%'; Tables_in_information_schema (T%) TABLES -diff -r 2bbfde0e0e70 mysql-test/r/mysqlshow.result --- - a/mysql-test/r/mysqlshow.result Mon Dec 22 00:33:11 2008 -0800 +++ - a/mysql-test/r/mysqlshow.result Tue Feb 17 22:33:58 2009 -0800 @@ -326,9 +326,9 @@ diff -r 2bbfde0e0e70 mysql-test/r/mysqlshow.result +---------------------------------------+ Wildcard: inf_rmation_schema +--------------------+ -diff -r 2bbfde0e0e70 patch_info/innodb_io_pattern.info +diff -r 5060df9888d7 patch_info/innodb_io_pattern.info --- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ b/patch_info/innodb_io_pattern.info Mon Dec 22 00:33:48 2008 -0800 @@ -338,9 +338,9 @@ diff -r 2bbfde0e0e70 patch_info/innodb_io_pattern.info +Comment=INFORMATION_SCHEMA.INNODB_IO_PATTERN +2008-12-01 +YK: fix for mysql-test -diff -r 2bbfde0e0e70 sql/ha_innodb.cc --- - a/sql/ha_innodb.cc Mon Dec 22 00:33:11 2008 -0800 +++ - a/sql/ha_innodb.cc Tue Feb 17 22:33:58 2009 -0800 @@ -350,7 +350,7 @@ diff -r 2bbfde0e0e70 sql/ha_innodb.cc /* If this is a replication slave and we needed to do a crash recovery, set the master binlog position to what InnoDB internally knew about how far we got transactions durable inside InnoDB. There is a -@@ -6527,6 +6529,28 @@ +@@ -6535,6 +6537,28 @@ } /**************************************************************************** @@ -379,10 +379,10 @@ diff -r 2bbfde0e0e70 sql/ha_innodb.cc Implements the SHOW INNODB STATUS command. Sends the output of the InnoDB Monitor to the client. */ -diff -r 2bbfde0e0e70 sql/ha_innodb.h --- - a/sql/ha_innodb.h Mon Dec 22 00:33:11 2008 -0800 +++ - a/sql/ha_innodb.h Tue Feb 17 22:33:58 2009 -0800 @@ -392,7 +392,7 @@ diff -r 2bbfde0e0e70 sql/ha_innodb.h } bool innobase_init(void); -@@ -266,6 +269,9 @@ +@@ -270,6 +273,9 @@ bool innodb_I_S_buffer_pool_content(THD* thd, TABLE_LIST *tables); bool innodb_mutex_show_status(THD* thd); void innodb_export_status(void); @@ -402,9 +402,9 @@ diff -r 2bbfde0e0e70 sql/ha_innodb.h void innobase_release_temporary_latches(THD *thd); -diff -r 2bbfde0e0e70 sql/lex.h --- - a/sql/lex.h Mon Dec 22 00:33:11 2008 -0800 +++ - a/sql/lex.h Tue Feb 17 22:33:58 2009 -0800 @@ -413,10 +413,10 @@ diff -r 2bbfde0e0e70 sql/lex.h { "INOUT", SYM(INOUT_SYM)}, { "INSENSITIVE", SYM(INSENSITIVE_SYM)}, { "INSERT", SYM(INSERT)}, -diff -r 2bbfde0e0e70 sql/mysqld.cc --- - a/sql/mysqld.cc Mon Dec 22 00:33:11 2008 -0800 +++ - a/sql/mysqld.cc Tue Feb 17 22:33:58 2009 -0800 @@ -426,7 +426,7 @@ diff -r 2bbfde0e0e70 sql/mysqld.cc OPT_BDB_CACHE_SIZE, OPT_BDB_LOG_BUFFER_SIZE, OPT_BDB_MAX_LOCK, -@@ -5382,6 +5385,18 @@ +@@ -5445,6 +5448,18 @@ "Number of background write I/O threads in InnoDB.", (gptr*) &innobase_write_io_threads, (gptr*) &innobase_write_io_threads, 0, GET_LONG, REQUIRED_ARG, 1, 1, 64, 0, 0, 0}, @@ -445,10 +445,10 @@ diff -r 2bbfde0e0e70 sql/mysqld.cc #endif /* End HAVE_INNOBASE_DB */ {"isam", OPT_ISAM, "Obsolete. ISAM storage engine is no longer supported.", (gptr*) &opt_isam, (gptr*) &opt_isam, 0, GET_BOOL, NO_ARG, 0, 0, 0, -diff -r 2bbfde0e0e70 sql/set_var.cc --- - a/sql/set_var.cc Mon Dec 22 00:33:11 2008 -0800 +++ - a/sql/set_var.cc Tue Feb 17 22:33:58 2009 -0800 @@ -461,7 +461,7 @@ diff -r 2bbfde0e0e70 sql/set_var.cc sys_var_const_os_str_ptr sys_innodb_data_file_path("innodb_data_file_path", &innobase_data_file_path); sys_var_const_os_str_ptr sys_innodb_data_home_dir("innodb_data_home_dir", -@@ -870,6 +876,9 @@ +@@ -901,6 +907,9 @@ &sys_innodb_adaptive_checkpoint, &sys_innodb_show_locks_held, &sys_innodb_show_verbose_locks, @@ -471,7 +471,7 @@ diff -r 2bbfde0e0e70 sql/set_var.cc #endif &sys_trust_routine_creators, &sys_trust_function_creators, -@@ -1012,6 +1021,9 @@ +@@ -1047,6 +1056,9 @@ {sys_innodb_adaptive_checkpoint.name, (char*) &sys_innodb_adaptive_checkpoint, SHOW_SYS}, {"innodb_read_io_threads", (char*) &innobase_read_io_threads, SHOW_LONG}, {"innodb_write_io_threads", (char*) &innobase_write_io_threads, SHOW_LONG}, @@ -481,7 +481,7 @@ diff -r 2bbfde0e0e70 sql/set_var.cc #endif {sys_interactive_timeout.name,(char*) &sys_interactive_timeout, SHOW_SYS}, {sys_join_buffer_size.name, (char*) &sys_join_buffer_size, SHOW_SYS}, -@@ -3117,6 +3129,19 @@ +@@ -3160,6 +3172,19 @@ thd->variables.lc_time_names= global_system_variables.lc_time_names; } @@ -501,10 +501,10 @@ diff -r 2bbfde0e0e70 sql/set_var.cc /* Functions to update thd->options bits */ -diff -r 2bbfde0e0e70 sql/set_var.h --- - a/sql/set_var.h Mon Dec 22 00:33:11 2008 -0800 +++ - a/sql/set_var.h Tue Feb 17 22:33:58 2009 -0800 @@ -522,10 +522,10 @@ diff -r 2bbfde0e0e70 sql/set_var.h /**************************************************************************** Classes for parsing of the SET command ****************************************************************************/ -diff -r 2bbfde0e0e70 sql/sql_parse.cc --- - a/sql/sql_parse.cc Mon Dec 22 00:33:11 2008 -0800 +++ - a/sql/sql_parse.cc Tue Feb 17 22:33:58 2009 -0800 @@ -539,9 +539,9 @@ diff -r 2bbfde0e0e70 sql/sql_parse.cc *write_to_binlog= tmp_write_to_binlog; return result; } -diff -r 2bbfde0e0e70 sql/sql_show.cc --- - a/sql/sql_show.cc Mon Dec 22 00:33:11 2008 -0800 +++ - a/sql/sql_show.cc Tue Feb 17 22:33:58 2009 -0800 @@ -560,7 +560,7 @@ diff -r 2bbfde0e0e70 sql/sql_show.cc #ifndef NO_EMBEDDED_ACCESS_CHECKS static const char *grant_names[]={ -@@ -4074,6 +4085,67 @@ +@@ -4088,6 +4099,67 @@ DBUG_RETURN(res); } @@ -628,7 +628,7 @@ diff -r 2bbfde0e0e70 sql/sql_show.cc /* Find schema_tables elment by name -@@ -4880,6 +4952,19 @@ +@@ -4894,6 +4966,19 @@ {0, 0, MYSQL_TYPE_STRING, 0, 0, 0} }; @@ -648,7 +648,7 @@ diff -r 2bbfde0e0e70 sql/sql_show.cc ST_FIELD_INFO variables_fields_info[]= { -@@ -5055,6 +5140,10 @@ +@@ -5069,6 +5154,10 @@ make_old_format, 0, -1, -1, 1}, {"VIEWS", view_fields_info, create_schema_table, get_all_tables, 0, get_schema_views_record, 1, 2, 0}, @@ -659,9 +659,9 @@ diff -r 2bbfde0e0e70 sql/sql_show.cc {0, 0, 0, 0, 0, 0, 0, 0, 0} }; -diff -r 2bbfde0e0e70 sql/sql_yacc.yy --- a/1100_all_split_buf_pool_mutex_fixed_optimistic_safe-percona-5.0.75-b12.patch Mon Dec 22 00:33:11 2008 -0800 +++ a/1100_all_split_buf_pool_mutex_fixed_optimistic_safe-percona-5.0.75-b12.patch Tue Feb 17 22:33:58 2009 -0800 @@ -8,16 +8,16 @@ diff -r 2e0c46e78b50 innobase/buf/buf0buf.c + mutex_create(&(buf_pool->flush_list_mutex)); + mutex_create(&(buf_pool->LRU_mutex)); + mutex_create(&(buf_pool->free_mutex)); -+ mutex_create(&(buf_pool->hash_mutex)); ++ rw_lock_create(&(buf_pool->hash_latch)); + mutex_set_level(&(buf_pool->flush_list_mutex), SYNC_NO_ORDER_CHECK); + mutex_set_level(&(buf_pool->LRU_mutex), SYNC_NO_ORDER_CHECK); + mutex_set_level(&(buf_pool->free_mutex), SYNC_NO_ORDER_CHECK); -+ mutex_set_level(&(buf_pool->hash_mutex), SYNC_NO_ORDER_CHECK); ++ rw_lock_set_level(&(buf_pool->hash_latch), SYNC_NO_ORDER_CHECK); + + mutex_enter(&(buf_pool->LRU_mutex)); + mutex_enter(&(buf_pool->flush_list_mutex)); + mutex_enter(&(buf_pool->free_mutex)); -+ mutex_enter(&(buf_pool->hash_mutex)); ++ rw_lock_x_lock(&(buf_pool->hash_latch)); mutex_enter(&(buf_pool->mutex)); if (srv_use_awe) { @@ -28,7 +28,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0buf.c + mutex_exit(&(buf_pool->LRU_mutex)); + mutex_exit(&(buf_pool->flush_list_mutex)); + mutex_exit(&(buf_pool->free_mutex)); -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_x_unlock(&(buf_pool->hash_latch)); mutex_exit(&(buf_pool->mutex)); if (srv_use_adaptive_hash_indexes) { @@ -88,12 +88,12 @@ diff -r 2e0c46e78b50 innobase/buf/buf0buf.c buf_block_t* block; - mutex_enter_fast(&(buf_pool->mutex)); -+ mutex_enter_fast(&(buf_pool->hash_mutex)); ++ rw_lock_s_lock(&(buf_pool->hash_latch)); block = buf_page_hash_get(space, offset); - mutex_exit(&(buf_pool->mutex)); -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_s_unlock(&(buf_pool->hash_latch)); return(block); } @@ -102,7 +102,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0buf.c buf_block_t* block; - mutex_enter_fast(&(buf_pool->mutex)); -+ mutex_enter_fast(&(buf_pool->hash_mutex)); ++ rw_lock_s_lock(&(buf_pool->hash_latch)); block = buf_page_hash_get(space, offset); @@ -111,7 +111,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0buf.c } - mutex_exit(&(buf_pool->mutex)); -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_s_unlock(&(buf_pool->hash_latch)); } /************************************************************************ @@ -120,7 +120,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0buf.c ibool is_hashed; - mutex_enter_fast(&(buf_pool->mutex)); -+ mutex_enter_fast(&(buf_pool->hash_mutex)); ++ rw_lock_s_lock(&(buf_pool->hash_latch)); block = buf_page_hash_get(space, offset); @@ -129,7 +129,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0buf.c } - mutex_exit(&(buf_pool->mutex)); -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_s_unlock(&(buf_pool->hash_latch)); return(is_hashed); } @@ -138,7 +138,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0buf.c buf_block_t* block; - mutex_enter_fast(&(buf_pool->mutex)); -+ mutex_enter_fast(&(buf_pool->hash_mutex)); ++ rw_lock_s_lock(&(buf_pool->hash_latch)); block = buf_page_hash_get(space, offset); @@ -147,7 +147,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0buf.c } - mutex_exit(&(buf_pool->mutex)); -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_s_unlock(&(buf_pool->hash_latch)); return(block); } @@ -156,7 +156,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0buf.c buf_block_t* block; - mutex_enter_fast(&(buf_pool->mutex)); -+ mutex_enter_fast(&(buf_pool->hash_mutex)); ++ rw_lock_s_lock(&(buf_pool->hash_latch)); block = buf_page_hash_get(space, offset); @@ -165,7 +165,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0buf.c } - mutex_exit(&(buf_pool->mutex)); -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_s_unlock(&(buf_pool->hash_latch)); return(block); } @@ -189,12 +189,12 @@ diff -r 2e0c46e78b50 innobase/buf/buf0buf.c } if (block == NULL) { -+ mutex_enter_fast(&(buf_pool->hash_mutex)); ++ rw_lock_s_lock(&(buf_pool->hash_latch)); block = buf_page_hash_get(space, offset); + if(block) { + mutex_enter(&block->mutex); + } -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_s_unlock(&(buf_pool->hash_latch)); } if (block == NULL) { @@ -248,7 +248,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0buf.c - mutex_enter(&(buf_pool->mutex)); + mutex_enter(&(buf_pool->LRU_mutex)); -+ mutex_enter(&(buf_pool->hash_mutex)); ++ rw_lock_x_lock(&(buf_pool->hash_latch)); mutex_enter(&block->mutex); if (fil_tablespace_deleted_or_being_deleted_in_mem(space, @@ -258,7 +258,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0buf.c mutex_exit(&block->mutex); - mutex_exit(&(buf_pool->mutex)); + mutex_exit(&(buf_pool->LRU_mutex)); -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_x_unlock(&(buf_pool->hash_latch)); buf_block_free(block); @@ -266,7 +266,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0buf.c ut_ad(block); buf_page_init(space, offset, block); -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_x_unlock(&(buf_pool->hash_latch)); /* The block must be put to the LRU list, to the old blocks */ @@ -283,7 +283,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0buf.c - mutex_enter(&(buf_pool->mutex)); + mutex_enter(&(buf_pool->LRU_mutex)); -+ mutex_enter(&(buf_pool->hash_mutex)); ++ rw_lock_x_lock(&(buf_pool->hash_latch)); block = buf_page_hash_get(space, offset); @@ -293,7 +293,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0buf.c /* Page can be found in buf_pool */ - mutex_exit(&(buf_pool->mutex)); + mutex_exit(&(buf_pool->LRU_mutex)); -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_x_unlock(&(buf_pool->hash_latch)); buf_block_free(free_block); @@ -301,7 +301,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0buf.c mutex_enter(&block->mutex); buf_page_init(space, offset, block); -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_x_unlock(&(buf_pool->hash_latch)); /* The block must be put to the LRU list */ buf_LRU_add_block(block, FALSE); @@ -438,7 +438,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0buf.c + mutex_enter(&(buf_pool->LRU_mutex)); + mutex_enter(&(buf_pool->flush_list_mutex)); + mutex_enter(&(buf_pool->free_mutex)); -+ mutex_enter(&(buf_pool->hash_mutex)); ++ rw_lock_x_lock(&(buf_pool->hash_latch)); + mutex_enter(&(buf_pool->mutex)); + n_single_flush_tmp = buf_pool->n_flush[BUF_FLUSH_SINGLE_PAGE]; @@ -463,7 +463,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0buf.c + mutex_exit(&(buf_pool->LRU_mutex)); + mutex_exit(&(buf_pool->flush_list_mutex)); + mutex_exit(&(buf_pool->free_mutex)); -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_x_unlock(&(buf_pool->hash_latch)); ut_a(buf_LRU_validate()); ut_a(buf_flush_validate()); @@ -604,7 +604,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0flu.c || flush_type == BUF_FLUSH_SINGLE_PAGE); - mutex_enter(&(buf_pool->mutex)); -+ mutex_enter(&(buf_pool->hash_mutex)); ++ rw_lock_s_lock(&(buf_pool->hash_latch)); block = buf_page_hash_get(space, offset); @@ -612,13 +612,13 @@ diff -r 2e0c46e78b50 innobase/buf/buf0flu.c if (!block) { - mutex_exit(&(buf_pool->mutex)); -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_s_unlock(&(buf_pool->hash_latch)); return(0); } mutex_enter(&block->mutex); + mutex_enter(&(buf_pool->mutex)); -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_s_unlock(&(buf_pool->hash_latch)); if (flush_type == BUF_FLUSH_LIST && buf_flush_ready_for_flush(block, flush_type)) { @@ -627,7 +627,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0flu.c } - mutex_enter(&(buf_pool->mutex)); -+ mutex_enter(&(buf_pool->hash_mutex)); ++ rw_lock_s_lock(&(buf_pool->hash_latch)); for (i = low; i < high; i++) { @@ -636,7 +636,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0flu.c mutex_exit(&block->mutex); - mutex_exit(&(buf_pool->mutex)); -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_s_unlock(&(buf_pool->hash_latch)); /* Note: as we release the buf_pool mutex above, in buf_flush_try_page we cannot be sure @@ -645,7 +645,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0flu.c flush_type); - mutex_enter(&(buf_pool->mutex)); -+ mutex_enter(&(buf_pool->hash_mutex)); ++ rw_lock_s_lock(&(buf_pool->hash_latch)); } else { mutex_exit(&block->mutex); } @@ -653,7 +653,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0flu.c } - mutex_exit(&(buf_pool->mutex)); -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_s_unlock(&(buf_pool->hash_latch)); return(count); } @@ -781,7 +781,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0lru.c + mutex_enter(&(buf_pool->LRU_mutex)); + mutex_enter(&(buf_pool->flush_list_mutex)); + mutex_enter(&(buf_pool->free_mutex)); -+ mutex_enter(&(buf_pool->hash_mutex)); ++ rw_lock_x_lock(&(buf_pool->hash_latch)); all_freed = TRUE; @@ -793,7 +793,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0lru.c + mutex_exit(&(buf_pool->LRU_mutex)); + mutex_exit(&(buf_pool->flush_list_mutex)); + mutex_exit(&(buf_pool->free_mutex)); -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_x_unlock(&(buf_pool->hash_latch)); /* Note that the following call will acquire an S-latch on the page */ @@ -805,7 +805,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0lru.c + mutex_exit(&(buf_pool->LRU_mutex)); + mutex_exit(&(buf_pool->flush_list_mutex)); + mutex_exit(&(buf_pool->free_mutex)); -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_x_unlock(&(buf_pool->hash_latch)); if (!all_freed) { os_thread_sleep(20000); @@ -861,11 +861,11 @@ diff -r 2e0c46e78b50 innobase/buf/buf0lru.c + + mutex_enter(&(buf_pool->LRU_mutex));/* optimistic */ + -+ mutex_enter(&(buf_pool->hash_mutex)); ++ rw_lock_x_lock(&(buf_pool->hash_latch)); + mutex_enter(&block->mutex); + if(block->in_LRU_list && buf_flush_ready_for_replace(block)) { buf_LRU_block_remove_hashed_page(block); -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_x_unlock(&(buf_pool->hash_latch)); - mutex_exit(&(buf_pool->mutex)); + mutex_exit(&(buf_pool->LRU_mutex)); @@ -889,7 +889,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0lru.c + } else { /* someone may interrupt...??? */ + mutex_exit(&(buf_pool->LRU_mutex));/* optimistic */ + -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_x_unlock(&(buf_pool->hash_latch)); + + if (!(block->in_LRU_list)) { + mutex_exit(&block->mutex); @@ -951,6 +951,15 @@ diff -r 2e0c46e78b50 innobase/buf/buf0lru.c if (!recv_recovery_on && UT_LIST_GET_LEN(buf_pool->free) + UT_LIST_GET_LEN(buf_pool->LRU) < buf_pool->max_size / 20) { +@@ -409,7 +449,7 @@ + /* If there is a block in the free list, take it */ + if (UT_LIST_GET_LEN(buf_pool->free) > 0) { + +- block = UT_LIST_GET_FIRST(buf_pool->free); ++ block = UT_LIST_GET_LAST(buf_pool->free); + ut_a(block->in_free_list); + UT_LIST_REMOVE(free, buf_pool->free, block); + block->in_free_list = FALSE; @@ -437,7 +477,7 @@ mutex_exit(&block->mutex); @@ -1036,7 +1045,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0rea.c /* Count how many blocks in the area have been recently accessed, that is, reside near the start of the LRU list. */ -+ mutex_enter(&(buf_pool->hash_mutex)); ++ rw_lock_s_lock(&(buf_pool->hash_latch)); for (i = low; i < high; i++) { block = buf_page_hash_get(space, i); @@ -1044,7 +1053,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0rea.c recent_blocks++; } } -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_s_unlock(&(buf_pool->hash_latch)); - mutex_exit(&(buf_pool->mutex)); + // mutex_exit(&(buf_pool->mutex)); @@ -1072,7 +1081,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0rea.c fail_count = 0; -+ mutex_enter(&(buf_pool->hash_mutex)); ++ rw_lock_s_lock(&(buf_pool->hash_latch)); for (i = low; i < high; i++) { block = buf_page_hash_get(space, i); @@ -1080,7 +1089,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0rea.c pred_block = block; } } -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_s_unlock(&(buf_pool->hash_latch)); if (fail_count > BUF_READ_AHEAD_LINEAR_AREA - BUF_READ_AHEAD_LINEAR_THRESHOLD) { @@ -1095,12 +1104,12 @@ diff -r 2e0c46e78b50 innobase/buf/buf0rea.c /* If we got this far, we know that enough pages in the area have been accessed in the right order: linear read-ahead can be sensible */ -+ mutex_enter(&(buf_pool->hash_mutex)); ++ rw_lock_s_lock(&(buf_pool->hash_latch)); block = buf_page_hash_get(space, offset); if (block == NULL) { - mutex_exit(&(buf_pool->mutex)); -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_s_unlock(&(buf_pool->hash_latch)); return(0); } @@ -1109,7 +1118,7 @@ diff -r 2e0c46e78b50 innobase/buf/buf0rea.c succ_offset = fil_page_get_next(frame); - mutex_exit(&(buf_pool->mutex)); -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_s_unlock(&(buf_pool->hash_latch)); if ((offset == low) && (succ_offset == offset + 1)) { @@ -1147,7 +1156,7 @@ diff -r 2e0c46e78b50 innobase/include/buf0buf.h mem_heap_t* io_counter_heap; ulint io_counters; hash_table_t* page_hash; /* hash table of the file pages */ -+ mutex_t hash_mutex; ++ rw_lock_t hash_latch; ulint n_pend_reads; /* number of pending read operations */ @@ -1284,12 +1293,12 @@ diff -r 2e0c46e78b50 innobase/log/log0recv.c mtr_start(&mtr); - mutex_enter(&(buf_pool->mutex)); -+ mutex_enter(&(buf_pool->hash_mutex)); ++ rw_lock_s_lock(&(buf_pool->hash_latch)); page = buf_page_hash_get(space, page_no)->frame; - mutex_exit(&(buf_pool->mutex)); -+ mutex_exit(&(buf_pool->hash_mutex)); ++ rw_lock_s_unlock(&(buf_pool->hash_latch)); replica = buf_page_get(space + RECV_REPLICA_SPACE_ADD, page_no, RW_X_LATCH, &mtr); --- a/1101_all_innodb_rw_lock-percona-5.0.75-b12.patch +++ a/1101_all_innodb_rw_lock-percona-5.0.75-b12.patch @@ -173,13 +173,19 @@ diff -r 962aec0d731c innobase/include/sync0rw.h /*================*/ rw_lock_t* lock); UNIV_INLINE -@@ -408,6 +418,11 @@ +@@ -408,6 +418,17 @@ rw_lock_debug_t* info); /* in: debug struct */ #endif /* UNIV_SYNC_DEBUG */ +#ifdef HAVE_ATOMIC_BUILTINS +/* This value means NOT_LOCKED */ +#define RW_LOCK_BIAS 0x00100000 ++#else ++#error HAVE_ATOMIC_BUILTINS is not defined. Do you use enough new GCC or compatibles? ++#error Or do you use exact options for CFLAGS? ++#error e.g. (for x86_32): "-m32 -march=i586 -mtune=i686" ++#error e.g. (for Sparc_64): "-m64 -mcpu=v9" ++#error Otherwise, this build may be slower than normal version. +#endif + /* NOTE! The structure appears here only for the compiler to know its size. @@ -1024,7 +1030,7 @@ diff -r 962aec0d731c innobase/sync/sync0rw.c /* If we get here, locking did not succeed, we may suspend the thread to wait in the wait array */ -@@ -281,9 +311,19 @@ +@@ -281,9 +311,26 @@ file_name, line, &index); @@ -1039,6 +1045,13 @@ diff -r 962aec0d731c innobase/sync/sync0rw.c + return; /* Success */ + } + } ++ ++ /* If wait_ex_waiter stalls, wakes it. */ ++ if (lock->wait_ex_waiters && lock->lock_word == RW_LOCK_BIAS) { ++ rw_lock_set_wx_waiters(lock, 0); ++ os_event_set(lock->wait_ex_event); ++ sync_array_object_signalled(sync_primary_wait_array); ++ } +#else mutex_exit(rw_lock_get_mutex(lock)); +#endif @@ -1095,32 +1108,32 @@ diff -r 962aec0d731c innobase/sync/sync0rw.c + switch(rw_lock_get_writer(lock)) { + case RW_LOCK_WAIT_EX: + /* have right to try x-lock */ -+ if (lock->lock_word == RW_LOCK_BIAS) { -+ /* try x-lock */ -+ if(__sync_sub_and_fetch(&(lock->lock_word), -+ RW_LOCK_BIAS) == 0) { -+ /* success */ -+ lock->pass = pass; -+ lock->writer_is_wait_ex = FALSE; -+ __sync_fetch_and_add(&(lock->writer_count),1); ++retry_x_lock: ++ /* try x-lock */ ++ if(__sync_sub_and_fetch(&(lock->lock_word), ++ RW_LOCK_BIAS) == 0) { ++ /* success */ ++ lock->pass = pass; ++ lock->writer_is_wait_ex = FALSE; ++ __sync_fetch_and_add(&(lock->writer_count),1); + +#ifdef UNIV_SYNC_DEBUG -+ rw_lock_remove_debug_info(lock, pass, RW_LOCK_WAIT_EX); -+ rw_lock_add_debug_info(lock, pass, RW_LOCK_EX, -+ file_name, line); ++ rw_lock_remove_debug_info(lock, pass, RW_LOCK_WAIT_EX); ++ rw_lock_add_debug_info(lock, pass, RW_LOCK_EX, ++ file_name, line); +#endif + -+ lock->last_x_file_name = file_name; -+ lock->last_x_line = line; ++ lock->last_x_file_name = file_name; ++ lock->last_x_line = line; + -+ /* Locking succeeded, we may return */ -+ return(RW_LOCK_EX); -+ } else { -+ /* fail */ -+ __sync_fetch_and_add(&(lock->lock_word), -+ RW_LOCK_BIAS); -+ } ++ /* Locking succeeded, we may return */ ++ return(RW_LOCK_EX); ++ } else if(__sync_fetch_and_add(&(lock->lock_word), ++ RW_LOCK_BIAS) == 0) { ++ /* retry x-lock */ ++ goto retry_x_lock; + } ++ + /* There are readers, we have to wait */ + return(RW_LOCK_WAIT_EX); + --- a/1215_all_innodb_dict_size_limit-percona-5.0.77-b13.patch +++ a/1215_all_innodb_dict_size_limit-percona-5.0.77-b13.patch