[packages/percona-server/v5.0.x: 109/202] - perfona patches for .77

glen glen at pld-linux.org
Wed Oct 21 16:18:11 CEST 2015


commit 337bc04581153807168f6b72dc92c66cb1a628fa
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date:   Thu Mar 12 21:49:07 2009 +0000

    - perfona patches for .77
    
    Changed files:
        mysql-innodb_io_pattern.patch -> 1.1.2.2
        mysql-innodb_locks_held.patch -> 1.1.2.3
        mysql-innodb_rw_lock.patch -> 1.1.2.2
        mysql-microslow_innodb.patch -> 1.1.2.6
        mysql-split_buf_pool_mutex_fixed_optimistic_safe.patch -> 1.1.2.3
        mysql-userstatv2.patch -> 1.1.2.6

 mysql-innodb_io_pattern.patch                      |  150 +--
 mysql-innodb_locks_held.patch                      |   76 +-
 mysql-innodb_rw_lock.patch                         |   57 +-
 mysql-microslow_innodb.patch                       |  306 ++---
 ...plit_buf_pool_mutex_fixed_optimistic_safe.patch |  103 +-
 mysql-userstatv2.patch                             | 1240 +++++++++++---------
 6 files changed, 1062 insertions(+), 870 deletions(-)
---
diff --git a/mysql-innodb_io_pattern.patch b/mysql-innodb_io_pattern.patch
index 604404f..26c9b69 100644
--- a/mysql-innodb_io_pattern.patch
+++ b/mysql-innodb_io_pattern.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
-+++ b/include/mysql_com.h	Mon Dec 22 00:33:48 2008 -0800
+diff -r 5060df9888d7 include/mysql_com.h
+--- a/include/mysql_com.h	Tue Feb 17 22:33:54 2009 -0800
++++ b/include/mysql_com.h	Tue Feb 17 22:33:58 2009 -0800
 @@ -121,6 +121,9 @@
  #define REFRESH_QUERY_CACHE_FREE 0x20000L /* pack query cache */
  #define REFRESH_DES_KEY_FILE	0x40000L
@@ -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
-+++ b/innobase/buf/buf0buf.c	Mon Dec 22 00:33:48 2008 -0800
+diff -r 5060df9888d7 innobase/buf/buf0buf.c
+--- a/innobase/buf/buf0buf.c	Tue Feb 17 22:33:54 2009 -0800
++++ b/innobase/buf/buf0buf.c	Tue Feb 17 22:33:58 2009 -0800
 @@ -653,6 +653,9 @@
  	}
  
@@ -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
-+++ b/innobase/include/buf0buf.h	Mon Dec 22 00:33:48 2008 -0800
+diff -r 5060df9888d7 innobase/include/buf0buf.h
+--- a/innobase/include/buf0buf.h	Tue Feb 17 22:33:54 2009 -0800
++++ b/innobase/include/buf0buf.h	Tue Feb 17 22:33:58 2009 -0800
 @@ -709,6 +709,18 @@
  void buf_pool_dump(void);
  buf_block_t* buf_pool_get_nth_block_no_inline(buf_pool_t* pool, ulint i);  
@@ -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
-+++ b/innobase/include/buf0types.h	Mon Dec 22 00:33:48 2008 -0800
+diff -r 5060df9888d7 innobase/include/buf0types.h
+--- a/innobase/include/buf0types.h	Tue Feb 17 22:33:54 2009 -0800
++++ b/innobase/include/buf0types.h	Tue Feb 17 22:33:58 2009 -0800
 @@ -12,6 +12,8 @@
  typedef	struct buf_block_struct		buf_block_t;
  typedef	struct buf_pool_struct		buf_pool_t;
@@ -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
-+++ b/innobase/include/srv0srv.h	Mon Dec 22 00:33:48 2008 -0800
-@@ -141,6 +141,11 @@
- extern ulint	srv_io_capacity;
- extern ulint	srv_read_ahead;
+diff -r 5060df9888d7 innobase/include/srv0srv.h
+--- a/innobase/include/srv0srv.h	Tue Feb 17 22:33:54 2009 -0800
++++ b/innobase/include/srv0srv.h	Tue Feb 17 22:33:58 2009 -0800
+@@ -145,6 +145,11 @@
+ extern ulint	srv_flush_neighbor_pages;
+ extern uint	srv_read_ahead;
  extern ulint	srv_adaptive_checkpoint;
 +
 +extern volatile ibool srv_io_pattern;
@@ -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
-+++ b/innobase/srv/srv0srv.c	Mon Dec 22 00:33:48 2008 -0800
-@@ -337,6 +337,11 @@
+diff -r 5060df9888d7 innobase/srv/srv0srv.c
+--- a/innobase/srv/srv0srv.c	Tue Feb 17 22:33:54 2009 -0800
++++ b/innobase/srv/srv0srv.c	Tue Feb 17 22:33:58 2009 -0800
+@@ -344,6 +344,11 @@
  
- ulint	srv_read_ahead = 3; /* 1: random  2: linear  3: Both */
+ uint	srv_read_ahead = 3; /* 1: random  2: linear  3: Both */
  ulint	srv_adaptive_checkpoint = 0; /* 0:disable 1:enable */
 +
 +volatile ibool srv_io_pattern = FALSE;
@@ -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
-+++ b/mysql-test/r/information_schema.result	Mon Dec 22 00:33:48 2008 -0800
+diff -r 5060df9888d7 mysql-test/r/information_schema.result
+--- a/mysql-test/r/information_schema.result	Tue Feb 17 22:33:54 2009 -0800
++++ b/mysql-test/r/information_schema.result	Tue Feb 17 22:33:58 2009 -0800
 @@ -59,6 +59,7 @@
  USER_PRIVILEGES
  USER_STATISTICS
@@ -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
-+++ b/mysql-test/r/information_schema_db.result	Mon Dec 22 00:33:48 2008 -0800
+diff -r 5060df9888d7 mysql-test/r/information_schema_db.result
+--- a/mysql-test/r/information_schema_db.result	Tue Feb 17 22:33:54 2009 -0800
++++ b/mysql-test/r/information_schema_db.result	Tue Feb 17 22:33:58 2009 -0800
 @@ -28,6 +28,7 @@
  USER_PRIVILEGES
  USER_STATISTICS
@@ -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
-+++ b/mysql-test/r/mysqlshow.result	Mon Dec 22 00:33:48 2008 -0800
+diff -r 5060df9888d7 mysql-test/r/mysqlshow.result
+--- a/mysql-test/r/mysqlshow.result	Tue Feb 17 22:33:54 2009 -0800
++++ b/mysql-test/r/mysqlshow.result	Tue Feb 17 22:33:58 2009 -0800
 @@ -102,6 +102,7 @@
  | USER_PRIVILEGES                       |
  | USER_STATISTICS                       |
@@ -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
++++ b/patch_info/innodb_io_pattern.info	Tue Feb 17 22:33:58 2009 -0800
 @@ -0,0 +1,8 @@
 +File=innodb_io_pattern.patch
 +Name=Information schema table of InnoDB IO counts for each datafile pages
@@ -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
-+++ b/sql/ha_innodb.cc	Mon Dec 22 00:33:48 2008 -0800
+diff -r 5060df9888d7 sql/ha_innodb.cc
+--- a/sql/ha_innodb.cc	Tue Feb 17 22:33:54 2009 -0800
++++ b/sql/ha_innodb.cc	Tue Feb 17 22:33:58 2009 -0800
 @@ -1569,6 +1569,8 @@
          pthread_cond_init(&commit_cond, NULL);
  	innodb_inited= 1;
@@ -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
-+++ b/sql/ha_innodb.h	Mon Dec 22 00:33:48 2008 -0800
-@@ -240,6 +240,9 @@
+diff -r 5060df9888d7 sql/ha_innodb.h
+--- a/sql/ha_innodb.h	Tue Feb 17 22:33:54 2009 -0800
++++ b/sql/ha_innodb.h	Tue Feb 17 22:33:58 2009 -0800
+@@ -244,6 +244,9 @@
  extern ulong srv_adaptive_checkpoint;
  extern ulong srv_show_locks_held;
  extern ulong srv_show_verbose_locks;
@@ -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
-+++ b/sql/lex.h	Mon Dec 22 00:33:48 2008 -0800
+diff -r 5060df9888d7 sql/lex.h
+--- a/sql/lex.h	Tue Feb 17 22:33:54 2009 -0800
++++ b/sql/lex.h	Tue Feb 17 22:33:58 2009 -0800
 @@ -244,6 +244,7 @@
    { "INNER",		SYM(INNER_SYM)},
    { "INNOBASE",		SYM(INNOBASE_SYM)},
@@ -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
-+++ b/sql/mysqld.cc	Mon Dec 22 00:33:48 2008 -0800
-@@ -4983,6 +4983,9 @@
+diff -r 5060df9888d7 sql/mysqld.cc
+--- a/sql/mysqld.cc	Tue Feb 17 22:33:54 2009 -0800
++++ b/sql/mysqld.cc	Tue Feb 17 22:33:58 2009 -0800
+@@ -5026,6 +5026,9 @@
    OPT_INNODB_SYNC_SPIN_LOOPS,
    OPT_INNODB_CONCURRENCY_TICKETS,
    OPT_INNODB_THREAD_SLEEP_DELAY,
@@ -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
-+++ b/sql/set_var.cc	Mon Dec 22 00:33:48 2008 -0800
-@@ -501,6 +501,12 @@
+diff -r 5060df9888d7 sql/set_var.cc
+--- a/sql/set_var.cc	Tue Feb 17 22:33:54 2009 -0800
++++ b/sql/set_var.cc	Tue Feb 17 22:33:58 2009 -0800
+@@ -528,6 +528,12 @@
  sys_var_long_ptr  sys_innodb_show_verbose_locks(
                                          "innodb_show_verbose_locks",
                                          &srv_show_verbose_locks);
@@ -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
-+++ b/sql/set_var.h	Mon Dec 22 00:33:48 2008 -0800
-@@ -985,6 +985,17 @@
+diff -r 5060df9888d7 sql/set_var.h
+--- a/sql/set_var.h	Tue Feb 17 22:33:54 2009 -0800
++++ b/sql/set_var.h	Tue Feb 17 22:33:58 2009 -0800
+@@ -989,6 +989,17 @@
    virtual void set_default(THD *thd, enum_var_type type);
  };
  
@@ -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
-+++ b/sql/sql_parse.cc	Mon Dec 22 00:33:48 2008 -0800
-@@ -7998,6 +7998,13 @@
+diff -r 5060df9888d7 sql/sql_parse.cc
+--- a/sql/sql_parse.cc	Tue Feb 17 22:33:54 2009 -0800
++++ b/sql/sql_parse.cc	Tue Feb 17 22:33:58 2009 -0800
+@@ -8009,6 +8009,13 @@
      }
      pthread_mutex_unlock(&LOCK_global_user_client_stats);
    }
@@ -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
-+++ b/sql/sql_show.cc	Mon Dec 22 00:33:48 2008 -0800
+diff -r 5060df9888d7 sql/sql_show.cc
+--- a/sql/sql_show.cc	Tue Feb 17 22:33:54 2009 -0800
++++ b/sql/sql_show.cc	Tue Feb 17 22:33:58 2009 -0800
 @@ -32,6 +32,17 @@
  #ifdef HAVE_INNOBASE_DB
  #include "ha_innodb.h"
@@ -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/sql/sql_yacc.yy	Mon Dec 22 00:33:11 2008 -0800
-+++ b/sql/sql_yacc.yy	Mon Dec 22 00:33:48 2008 -0800
+diff -r 5060df9888d7 sql/sql_yacc.yy
+--- a/sql/sql_yacc.yy	Tue Feb 17 22:33:54 2009 -0800
++++ b/sql/sql_yacc.yy	Tue Feb 17 22:33:58 2009 -0800
 @@ -685,6 +685,7 @@
  %token  INFILE
  %token  INNER_SYM
diff --git a/mysql-innodb_locks_held.patch b/mysql-innodb_locks_held.patch
index 18c99f4..a4ae8ab 100644
--- a/mysql-innodb_locks_held.patch
+++ b/mysql-innodb_locks_held.patch
@@ -1,6 +1,6 @@
-diff -r ae6708ab17e5 innobase/include/srv0srv.h
---- a/innobase/include/srv0srv.h	Mon Dec 22 00:32:07 2008 -0800
-+++ b/innobase/include/srv0srv.h	Mon Dec 22 00:32:58 2008 -0800
+diff -r 7d3d7786b927 innobase/include/srv0srv.h
+--- a/innobase/include/srv0srv.h	Tue Feb 17 22:33:33 2009 -0800
++++ b/innobase/include/srv0srv.h	Tue Feb 17 22:33:47 2009 -0800
 @@ -80,6 +80,8 @@
  extern ulint	srv_log_file_size;
  extern ulint	srv_log_buffer_size;
@@ -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
-+++ b/innobase/lock/lock0lock.c	Mon Dec 22 00:32:58 2008 -0800
+diff -r 7d3d7786b927 innobase/lock/lock0lock.c
+--- a/innobase/lock/lock0lock.c	Tue Feb 17 22:33:33 2009 -0800
++++ b/innobase/lock/lock0lock.c	Tue Feb 17 22:33:47 2009 -0800
 @@ -4181,6 +4181,7 @@
  #endif /* UNIV_SYNC_DEBUG */
  	}
@@ -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
-+++ b/innobase/srv/srv0srv.c	Mon Dec 22 00:32:58 2008 -0800
+diff -r 7d3d7786b927 innobase/srv/srv0srv.c
+--- a/innobase/srv/srv0srv.c	Tue Feb 17 22:33:33 2009 -0800
++++ b/innobase/srv/srv0srv.c	Tue Feb 17 22:33:47 2009 -0800
 @@ -116,6 +116,8 @@
  ulint	srv_log_file_size	= ULINT_MAX;	/* size in database pages */ 
  ulint	srv_log_buffer_size	= ULINT_MAX;	/* size in database pages */ 
@@ -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
-+++ b/libmysqld/set_var.cc	Mon Dec 22 00:32:58 2008 -0800
+diff -r 7d3d7786b927 libmysqld/set_var.cc
+--- a/libmysqld/set_var.cc	Tue Feb 17 22:33:33 2009 -0800
++++ b/libmysqld/set_var.cc	Tue Feb 17 22:33:47 2009 -0800
 @@ -821,6 +821,8 @@
    &sys_innodb_thread_concurrency,
    &sys_innodb_commit_concurrency,
@@ -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
++++ b/patch_info/innodb_locks_held.info	Tue Feb 17 22:33:47 2009 -0800
 @@ -0,0 +1,6 @@
 +File=innodb_locks_held.patch
 +Name=Add locks held, remove locked records in SHOW INNODB STATUS
@@ -144,22 +144,22 @@ diff -r ae6708ab17e5 patch_info/innodb_locks_held.info
 +Author=Baron Schwartz <baron at xaprb.com>
 +License=GPL
 +Comment=Bug #29126 fix
-diff -r ae6708ab17e5 sql/ha_innodb.h
---- a/sql/ha_innodb.h	Mon Dec 22 00:32:07 2008 -0800
-+++ b/sql/ha_innodb.h	Mon Dec 22 00:32:58 2008 -0800
-@@ -238,6 +238,8 @@
- extern ulong srv_io_capacity;
- extern ulong srv_read_ahead;
+diff -r 7d3d7786b927 sql/ha_innodb.h
+--- a/sql/ha_innodb.h	Tue Feb 17 22:33:33 2009 -0800
++++ b/sql/ha_innodb.h	Tue Feb 17 22:33:47 2009 -0800
+@@ -242,6 +242,8 @@
+ extern ulong srv_flush_neighbor_pages;
+ extern uint srv_read_ahead;
  extern ulong srv_adaptive_checkpoint;
 +extern ulong srv_show_locks_held;
 +extern ulong srv_show_verbose_locks;
  }
  
  bool innobase_init(void);
-diff -r ae6708ab17e5 sql/mysqld.cc
---- a/sql/mysqld.cc	Mon Dec 22 00:32:07 2008 -0800
-+++ b/sql/mysqld.cc	Mon Dec 22 00:32:58 2008 -0800
-@@ -4969,6 +4969,8 @@
+diff -r 7d3d7786b927 sql/mysqld.cc
+--- a/sql/mysqld.cc	Tue Feb 17 22:33:33 2009 -0800
++++ b/sql/mysqld.cc	Tue Feb 17 22:33:47 2009 -0800
+@@ -5012,6 +5012,8 @@
    OPT_INNODB_MAX_PURGE_LAG,
    OPT_INNODB_FILE_IO_THREADS,
    OPT_INNODB_LOCK_WAIT_TIMEOUT,
@@ -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
-+++ b/sql/set_var.cc	Mon Dec 22 00:32:58 2008 -0800
-@@ -495,6 +495,12 @@
-                                               &srv_read_ahead);
+diff -r 7d3d7786b927 sql/set_var.cc
+--- a/sql/set_var.cc	Tue Feb 17 22:33:33 2009 -0800
++++ b/sql/set_var.cc	Tue Feb 17 22:33:47 2009 -0800
+@@ -522,6 +522,12 @@
+                                       &innodb_read_ahead_typelib, fix_innodb_read_ahead);
  sys_var_long_ptr	sys_innodb_adaptive_checkpoint("innodb_adaptive_checkpoint",
                                                        &srv_adaptive_checkpoint);
 +sys_var_long_ptr  sys_innodb_show_locks_held(
@@ -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},
diff --git a/mysql-innodb_rw_lock.patch b/mysql-innodb_rw_lock.patch
index 3070bb0..f7a3166 100644
--- a/mysql-innodb_rw_lock.patch
+++ b/mysql-innodb_rw_lock.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);
 +
diff --git a/mysql-microslow_innodb.patch b/mysql-microslow_innodb.patch
index ea2133a..6c21043 100644
--- a/mysql-microslow_innodb.patch
+++ b/mysql-microslow_innodb.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
-+++ b/include/my_getopt.h	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d include/my_getopt.h
+--- a/include/my_getopt.h	Tue Feb 17 22:32:27 2009 -0800
++++ b/include/my_getopt.h	Tue Feb 17 22:33:00 2009 -0800
 @@ -28,7 +28,8 @@
  #define GET_ULL        8
  #define GET_STR        9
@@ -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
-+++ b/include/my_time.h	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d include/my_time.h
+--- a/include/my_time.h	Tue Feb 17 22:32:27 2009 -0800
++++ b/include/my_time.h	Tue Feb 17 22:33:00 2009 -0800
 @@ -140,7 +140,7 @@
  int my_date_to_str(const MYSQL_TIME *l_time, char *to);
  int my_datetime_to_str(const MYSQL_TIME *l_time, char *to);
@@ -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
-+++ b/innobase/buf/buf0buf.c	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d innobase/buf/buf0buf.c
+--- a/innobase/buf/buf0buf.c	Tue Feb 17 22:32:27 2009 -0800
++++ b/innobase/buf/buf0buf.c	Tue Feb 17 22:33:00 2009 -0800
 @@ -37,6 +37,9 @@
  #include "log0log.h"
  #include "trx0undo.h"
@@ -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
-+++ b/innobase/buf/buf0rea.c	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d innobase/buf/buf0rea.c
+--- a/innobase/buf/buf0rea.c	Tue Feb 17 22:32:27 2009 -0800
++++ b/innobase/buf/buf0rea.c	Tue Feb 17 22:33:00 2009 -0800
 @@ -70,7 +70,8 @@
  			treat the tablespace as dropped; this is a timestamp we
  			use to stop dangling page reads from a tablespace
@@ -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
-+++ b/innobase/fil/fil0fil.c	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d innobase/fil/fil0fil.c
+--- a/innobase/fil/fil0fil.c	Tue Feb 17 22:32:27 2009 -0800
++++ b/innobase/fil/fil0fil.c	Tue Feb 17 22:33:00 2009 -0800
 @@ -3527,7 +3527,7 @@
  			node->name, node->handle, buf,
  			offset_low, offset_high,
@@ -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
-+++ b/innobase/include/buf0rea.h	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d innobase/include/buf0rea.h
+--- a/innobase/include/buf0rea.h	Tue Feb 17 22:32:27 2009 -0800
++++ b/innobase/include/buf0rea.h	Tue Feb 17 22:33:00 2009 -0800
 @@ -10,6 +10,7 @@
  #define buf0rea_h
  
@@ -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
-+++ b/innobase/include/fil0fil.h	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d innobase/include/fil0fil.h
+--- a/innobase/include/fil0fil.h	Tue Feb 17 22:32:27 2009 -0800
++++ b/innobase/include/fil0fil.h	Tue Feb 17 22:33:00 2009 -0800
 @@ -534,8 +534,11 @@
  /************************************************************************
  Reads or writes data. This operation is asynchronous (aio). */
@@ -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
-+++ b/innobase/include/os0file.h	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d innobase/include/os0file.h
+--- a/innobase/include/os0file.h	Tue Feb 17 22:32:27 2009 -0800
++++ b/innobase/include/os0file.h	Tue Feb 17 22:33:00 2009 -0800
 @@ -10,6 +10,8 @@
  #define os0file_h
  
@@ -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
-+++ b/innobase/include/srv0srv.h	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d innobase/include/srv0srv.h
+--- a/innobase/include/srv0srv.h	Tue Feb 17 22:32:27 2009 -0800
++++ b/innobase/include/srv0srv.h	Tue Feb 17 22:33:00 2009 -0800
 @@ -26,6 +26,8 @@
  at a time */
  #define SRV_AUTO_EXTEND_INCREMENT	\
@@ -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
-+++ b/innobase/include/trx0trx.h	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d innobase/include/trx0trx.h
+--- a/innobase/include/trx0trx.h	Tue Feb 17 22:32:27 2009 -0800
++++ b/innobase/include/trx0trx.h	Tue Feb 17 22:33:00 2009 -0800
 @@ -668,6 +668,17 @@
  	/*------------------------------*/
  	char detailed_error[256];	/* detailed error message for last
@@ -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
-+++ b/innobase/lock/lock0lock.c	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d innobase/lock/lock0lock.c
+--- a/innobase/lock/lock0lock.c	Tue Feb 17 22:32:27 2009 -0800
++++ b/innobase/lock/lock0lock.c	Tue Feb 17 22:33:00 2009 -0800
 @@ -1806,6 +1806,8 @@
  {
  	lock_t*	lock;
@@ -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
-+++ b/innobase/os/os0file.c	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d innobase/os/os0file.c
+--- a/innobase/os/os0file.c	Tue Feb 17 22:32:27 2009 -0800
++++ b/innobase/os/os0file.c	Tue Feb 17 22:33:00 2009 -0800
 @@ -14,6 +14,7 @@
  #include "srv0start.h"
  #include "fil0fil.h"
@@ -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
-+++ b/innobase/srv/srv0srv.c	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d innobase/srv/srv0srv.c
+--- a/innobase/srv/srv0srv.c	Tue Feb 17 22:32:27 2009 -0800
++++ b/innobase/srv/srv0srv.c	Tue Feb 17 22:33:00 2009 -0800
 @@ -47,6 +47,8 @@
  #include "dict0boot.h"
  #include "srv0start.h"
@@ -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
-+++ b/innobase/trx/trx0trx.c	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d innobase/trx/trx0trx.c
+--- a/innobase/trx/trx0trx.c	Tue Feb 17 22:32:27 2009 -0800
++++ b/innobase/trx/trx0trx.c	Tue Feb 17 22:33:00 2009 -0800
 @@ -190,6 +190,15 @@
  	trx->global_read_view_heap = mem_heap_create(256);
  	trx->global_read_view = NULL;
@@ -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
-+++ b/mysys/my_getopt.c	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d mysys/my_getopt.c
+--- a/mysys/my_getopt.c	Tue Feb 17 22:32:27 2009 -0800
++++ b/mysys/my_getopt.c	Tue Feb 17 22:33:00 2009 -0800
 @@ -1061,6 +1061,9 @@
        case GET_ULONG:
  	printf("%lu\n", *((ulong*) value));
@@ -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
++++ b/patch_info/microslow_innodb.info	Tue Feb 17 22:33:00 2009 -0800
 @@ -0,0 +1,15 @@
 +File=microslow_innodb.patch
 +Name=Extended statistics in slow.log
@@ -891,9 +891,9 @@ diff -r 25523be1816e patch_info/microslow_innodb.info
 +
 +2008-11
 +Arjen Lentz: Fixups (backward compatibility) by Arjen Lentz <arjen at openquery.com.au>
-diff -r 25523be1816e scripts/mysqldumpslow.sh
---- a/scripts/mysqldumpslow.sh	Mon Dec 22 00:25:06 2008 -0800
-+++ b/scripts/mysqldumpslow.sh	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d scripts/mysqldumpslow.sh
+--- a/scripts/mysqldumpslow.sh	Tue Feb 17 22:32:27 2009 -0800
++++ b/scripts/mysqldumpslow.sh	Tue Feb 17 22:33:00 2009 -0800
 @@ -83,8 +83,8 @@
      s/^#? Time: \d{6}\s+\d+:\d+:\d+.*\n//;
      my ($user,$host) = s/^#? User\@Host:\s+(\S+)\s+\@\s+(\S+).*\n// ? ($1,$2) : ('','');
@@ -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
-+++ b/sql-common/my_time.c	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d sql-common/my_time.c
+--- a/sql-common/my_time.c	Tue Feb 17 22:32:27 2009 -0800
++++ b/sql-common/my_time.c	Tue Feb 17 22:33:00 2009 -0800
 @@ -1252,3 +1252,37 @@
    return 0;
  }
@@ -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
-+++ b/sql/filesort.cc	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d sql/filesort.cc
+--- a/sql/filesort.cc	Tue Feb 17 22:32:27 2009 -0800
++++ b/sql/filesort.cc	Tue Feb 17 22:33:00 2009 -0800
 @@ -180,6 +180,7 @@
    {
      statistic_increment(thd->status_var.filesort_scan_count, &LOCK_status);
@@ -973,9 +973,9 @@ diff -r 25523be1816e sql/filesort.cc
    if (param->not_killable)
    {
      killed= &not_killable;
-diff -r 25523be1816e sql/ha_innodb.cc
---- a/sql/ha_innodb.cc	Mon Dec 22 00:25:06 2008 -0800
-+++ b/sql/ha_innodb.cc	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d sql/ha_innodb.cc
+--- a/sql/ha_innodb.cc	Tue Feb 17 22:32:27 2009 -0800
++++ b/sql/ha_innodb.cc	Tue Feb 17 22:33:00 2009 -0800
 @@ -1,3 +1,4 @@
 +
  /* Copyright (C) 2000-2005 MySQL AB & Innobase Oy
@@ -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
-+++ b/sql/ha_innodb.h	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d sql/ha_innodb.h
+--- a/sql/ha_innodb.h	Tue Feb 17 22:32:27 2009 -0800
++++ b/sql/ha_innodb.h	Tue Feb 17 22:33:00 2009 -0800
 @@ -266,6 +266,8 @@
  
  int innobase_start_trx_and_assign_read_view(THD* thd);
@@ -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
-+++ b/sql/log.cc	Mon Dec 22 00:26:39 2008 -0800
-@@ -2229,11 +2229,12 @@
+diff -r 04958490fc6d sql/log.cc
+--- a/sql/log.cc	Tue Feb 17 22:32:27 2009 -0800
++++ b/sql/log.cc	Tue Feb 17 22:33:00 2009 -0800
+@@ -2284,11 +2284,12 @@
  */
  
  bool MYSQL_LOG::write(THD *thd,const char *query, uint query_length,
@@ -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 at 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
-+++ b/sql/log_event.cc	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d sql/log_event.cc
+--- a/sql/log_event.cc	Tue Feb 17 22:32:27 2009 -0800
++++ b/sql/log_event.cc	Tue Feb 17 22:33:00 2009 -0800
 @@ -2039,6 +2039,7 @@
        /* Execute the query (note that we bypass dispatch_command()) */
        const char* found_semicolon= NULL;
@@ -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
-+++ b/sql/mysql_priv.h	Mon Dec 22 00:26:39 2008 -0800
-@@ -489,6 +489,78 @@
+diff -r 04958490fc6d sql/mysql_priv.h
+--- a/sql/mysql_priv.h	Tue Feb 17 22:32:27 2009 -0800
++++ b/sql/mysql_priv.h	Tue Feb 17 22:33:00 2009 -0800
+@@ -494,6 +494,78 @@
  #define WEEK_FIRST_WEEKDAY   4
  
  #define STRING_BUFFER_USUAL_SIZE 80
@@ -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
-+++ b/sql/mysqld.cc	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d sql/mysqld.cc
+--- a/sql/mysqld.cc	Tue Feb 17 22:32:27 2009 -0800
++++ b/sql/mysqld.cc	Tue Feb 17 22:33:00 2009 -0800
 @@ -175,7 +175,6 @@
  static void getvolumename();
  static void getvolumeID(BYTE *volumeName);
@@ -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
-+++ b/sql/set_var.cc	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d sql/set_var.cc
+--- a/sql/set_var.cc	Tue Feb 17 22:32:27 2009 -0800
++++ b/sql/set_var.cc	Tue Feb 17 22:33:00 2009 -0800
 @@ -217,9 +217,13 @@
    sys_log_queries_not_using_indexes("log_queries_not_using_indexes",
                                      &opt_log_queries_not_using_indexes);
@@ -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
-+++ b/sql/set_var.h	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d sql/set_var.h
+--- a/sql/set_var.h	Tue Feb 17 22:32:27 2009 -0800
++++ b/sql/set_var.h	Tue Feb 17 22:33:00 2009 -0800
 @@ -132,6 +132,7 @@
  };
  
@@ -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
-+++ b/sql/slave.cc	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d sql/slave.cc
+--- a/sql/slave.cc	Tue Feb 17 22:32:27 2009 -0800
++++ b/sql/slave.cc	Tue Feb 17 22:33:00 2009 -0800
 @@ -2925,6 +2925,12 @@
      + MAX_LOG_EVENT_HEADER;  /* note, incr over the global not session var */
    thd->slave_thread = 1;
@@ -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
-+++ b/sql/sql_cache.cc	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d sql/sql_cache.cc
+--- a/sql/sql_cache.cc	Tue Feb 17 22:32:27 2009 -0800
++++ b/sql/sql_cache.cc	Tue Feb 17 22:33:00 2009 -0800
 @@ -1341,6 +1341,7 @@
  
    thd->limit_found_rows = query->found_rows();
@@ -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
-+++ b/sql/sql_class.cc	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d sql/sql_class.cc
+--- a/sql/sql_class.cc	Tue Feb 17 22:32:27 2009 -0800
++++ b/sql/sql_class.cc	Tue Feb 17 22:33:00 2009 -0800
 @@ -188,7 +188,7 @@
     lock_id(&main_lock_id),
     user_time(0), in_sub_stmt(0), global_read_lock(0), is_fatal_error(0),
@@ -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
-+++ b/sql/sql_class.h	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d sql/sql_class.h
+--- a/sql/sql_class.h	Tue Feb 17 22:32:27 2009 -0800
++++ b/sql/sql_class.h	Tue Feb 17 22:33:00 2009 -0800
 @@ -43,6 +43,7 @@
  extern char internal_table_name[2];
  extern char empty_c_string[1];
@@ -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
-+++ b/sql/sql_parse.cc	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d sql/sql_parse.cc
+--- a/sql/sql_parse.cc	Tue Feb 17 22:32:27 2009 -0800
++++ b/sql/sql_parse.cc	Tue Feb 17 22:33:00 2009 -0800
 @@ -20,6 +20,7 @@
  #include <m_ctype.h>
  #include <myisam.h>
@@ -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
-+++ b/sql/sql_select.cc	Mon Dec 22 00:26:39 2008 -0800
-@@ -6221,8 +6221,11 @@
+diff -r 04958490fc6d sql/sql_select.cc
+--- a/sql/sql_select.cc	Tue Feb 17 22:32:27 2009 -0800
++++ b/sql/sql_select.cc	Tue Feb 17 22:33:00 2009 -0800
+@@ -6224,8 +6224,11 @@
  	  {
  	    join->thd->server_status|=SERVER_QUERY_NO_INDEX_USED;
  	    if (statistics)
@@ -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
-+++ b/sql/sql_show.cc	Mon Dec 22 00:26:39 2008 -0800
-@@ -1532,6 +1532,12 @@
+diff -r 04958490fc6d sql/sql_show.cc
+--- a/sql/sql_show.cc	Tue Feb 17 22:32:27 2009 -0800
++++ b/sql/sql_show.cc	Tue Feb 17 22:33:00 2009 -0800
+@@ -1544,6 +1544,12 @@
            value= ((char *) status_var + (ulonglong) value);
          case SHOW_LONGLONG:
            end= longlong10_to_str(*(longlong*) value, buff, 10);
@@ -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
-+++ b/sql/structs.h	Mon Dec 22 00:26:39 2008 -0800
+diff -r 04958490fc6d sql/structs.h
+--- a/sql/structs.h	Tue Feb 17 22:32:27 2009 -0800
++++ b/sql/structs.h	Tue Feb 17 22:33:00 2009 -0800
 @@ -168,8 +168,8 @@
  enum SHOW_TYPE
  {
diff --git a/mysql-split_buf_pool_mutex_fixed_optimistic_safe.patch b/mysql-split_buf_pool_mutex_fixed_optimistic_safe.patch
index 016d667..885e893 100644
--- a/mysql-split_buf_pool_mutex_fixed_optimistic_safe.patch
+++ b/mysql-split_buf_pool_mutex_fixed_optimistic_safe.patch
@@ -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);
diff --git a/mysql-userstatv2.patch b/mysql-userstatv2.patch
index e0c0bd1..a5efe3e 100644
--- a/mysql-userstatv2.patch
+++ b/mysql-userstatv2.patch
@@ -1,7 +1,7 @@
-diff -r 1270c564d514 BUILD/Makefile.in
---- a/BUILD/Makefile.in	Mon Dec 22 00:26:39 2008 -0800
-+++ b/BUILD/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -169,6 +169,7 @@
+diff -r 23e5576aa59a BUILD/Makefile.in
+--- a/BUILD/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/BUILD/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -146,6 +146,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -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
-+++ b/Docs/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -167,6 +167,7 @@
+diff -r 23e5576aa59a Docs/Makefile.in
+--- a/Docs/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/Docs/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -144,6 +144,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -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
-+++ b/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -191,6 +191,7 @@
+diff -r 23e5576aa59a Makefile.in
+--- a/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -171,6 +171,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -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
-+++ b/SSL/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -167,6 +167,7 @@
+diff -r 23e5576aa59a SSL/Makefile.in
+--- a/SSL/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/SSL/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -144,6 +144,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -42,10 +42,55 @@ diff -r 1270c564d514 SSL/Makefile.in
  LIBS = @LIBS@
  LIBTOOL = @LIBTOOL@
  LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@
-diff -r 1270c564d514 client/Makefile.in
---- a/client/Makefile.in	Mon Dec 22 00:26:39 2008 -0800
-+++ b/client/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -268,6 +268,7 @@
+diff -r 23e5576aa59a aclocal.m4
+--- a/aclocal.m4	Tue Feb 17 22:33:00 2009 -0800
++++ b/aclocal.m4	Tue Feb 17 22:33:23 2009 -0800
+@@ -4412,6 +4412,9 @@
+ # Is the compiler the GNU C compiler?
+ with_gcc=$_LT_AC_TAGVAR(GCC, $1)
+ 
++gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
++gcc_ver=\`gcc -dumpversion\`
++
+ # An ERE matcher.
+ EGREP=$lt_EGREP
+ 
+@@ -4545,11 +4548,11 @@
+ 
+ # Dependencies to place before the objects being linked to create a
+ # shared library.
+-predep_objects=$lt_[]_LT_AC_TAGVAR(predep_objects, $1)
++predep_objects=\`echo $lt_[]_LT_AC_TAGVAR(predep_objects, $1) | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
+ 
+ # Dependencies to place after the objects being linked to create a
+ # shared library.
+-postdep_objects=$lt_[]_LT_AC_TAGVAR(postdep_objects, $1)
++postdep_objects=\`echo $lt_[]_LT_AC_TAGVAR(postdep_objects, $1) | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
+ 
+ # Dependencies to place before the objects being linked to create a
+ # shared library.
+@@ -4561,7 +4564,7 @@
+ 
+ # The library search path used internally by the compiler when linking
+ # a shared library.
+-compiler_lib_search_path=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1)
++compiler_lib_search_path=\`echo $lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1) | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
+ 
+ # Method to check whether dependent libraries are shared objects.
+ deplibs_check_method=$lt_deplibs_check_method
+@@ -4641,7 +4644,7 @@
+ link_all_deplibs=$_LT_AC_TAGVAR(link_all_deplibs, $1)
+ 
+ # Compile-time system search path for libraries
+-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
++sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
+ 
+ # Run-time system search path for libraries
+ sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
+diff -r 23e5576aa59a client/Makefile.in
+--- a/client/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/client/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -247,6 +247,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -53,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
-+++ b/cmd-line-utils/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -177,6 +177,7 @@
+diff -r 23e5576aa59a cmd-line-utils/Makefile.in
+--- a/cmd-line-utils/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/cmd-line-utils/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -157,6 +157,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -64,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
-+++ b/cmd-line-utils/libedit/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -197,6 +197,7 @@
+diff -r 23e5576aa59a cmd-line-utils/libedit/Makefile.in
+--- a/cmd-line-utils/libedit/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/cmd-line-utils/libedit/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -175,6 +175,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -75,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
-+++ b/cmd-line-utils/readline/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -195,6 +195,7 @@
+diff -r 23e5576aa59a cmd-line-utils/readline/Makefile.in
+--- a/cmd-line-utils/readline/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/cmd-line-utils/readline/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -173,6 +173,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -86,9 +131,114 @@ diff -r 1270c564d514 cmd-line-utils/readline/Makefile.in
  LIBS = @LIBS@
  LIBTOOL = @LIBTOOL@
  LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@
-diff -r 1270c564d514 configure.in
---- a/configure.in	Mon Dec 22 00:26:39 2008 -0800
-+++ b/configure.in	Mon Dec 22 00:31:13 2008 -0800
+diff -r 23e5576aa59a configure
+--- a/configure	Tue Feb 17 22:33:00 2009 -0800
++++ b/configure	Tue Feb 17 22:33:23 2009 -0800
+@@ -39583,7 +39583,91 @@
+ 	# We also disable for SCO for the time being, the headers for the
+ 	# thread library we use conflicts with other headers.
+     ;;
+- *)
++*)
++   # most systems require the program be linked with librt library to use
++   # the function clock_gettime
++   my_save_LIBS="$LIBS"
++   LIBS=""
++
++echo "$as_me:$LINENO: checking for clock_gettime in -lrt" >&5
++echo $ECHO_N "checking for clock_gettime in -lrt... $ECHO_C" >&6
++if test "${ac_cv_lib_rt_clock_gettime+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  ac_check_lib_save_LIBS=$LIBS
++LIBS="-lrt  $LIBS"
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++
++/* Override any gcc2 internal prototype to avoid an error.  */
++#ifdef __cplusplus
++extern "C"
++#endif
++/* We use char because int might match the return type of a gcc2
++   builtin and then its argument prototype would still apply.  */
++char clock_gettime ();
++int
++main ()
++{
++clock_gettime ();
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext conftest$ac_exeext
++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
++  (eval $ac_link) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"
++			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest$ac_exeext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_cv_lib_rt_clock_gettime=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_cv_lib_rt_clock_gettime=no
++fi
++rm -f conftest.err conftest.$ac_objext \
++      conftest$ac_exeext conftest.$ac_ext
++LIBS=$ac_check_lib_save_LIBS
++fi
++echo "$as_me:$LINENO: result: $ac_cv_lib_rt_clock_gettime" >&5
++echo "${ECHO_T}$ac_cv_lib_rt_clock_gettime" >&6
++if test $ac_cv_lib_rt_clock_gettime = yes; then
++  cat >>confdefs.h <<_ACEOF
++#define HAVE_LIBRT 1
++_ACEOF
++
++  LIBS="-lrt $LIBS"
++
++fi
++
++   LIBRT=$LIBS
++   LIBS="$my_save_LIBS"
++
++
++   LIBS="$LIBS $LIBRT"
++
+ for ac_func in clock_gettime
+ do
+ as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+@@ -42956,7 +43040,7 @@
+ 
+ fi
+ 
+-CLIENT_LIBS="$NON_THREADED_LIBS $openssl_libs $ZLIB_LIBS $STATIC_NSS_FLAGS"
++CLIENT_LIBS="$NON_THREADED_LIBS $openssl_libs $ZLIB_LIBS $STATIC_NSS_FLAGS $LIBRT"
+ 
+ 
+ 
+diff -r 23e5576aa59a configure.in
+--- a/configure.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/configure.in	Tue Feb 17 22:33:23 2009 -0800
 @@ -2098,7 +2098,18 @@
  	# We also disable for SCO for the time being, the headers for the
  	# thread library we use conflicts with other headers.
@@ -118,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
-+++ b/dbug/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -214,6 +214,7 @@
+diff -r 23e5576aa59a dbug/Makefile.in
+--- a/dbug/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/dbug/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -192,6 +192,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -129,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
-+++ b/extra/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -259,6 +259,7 @@
+diff -r 23e5576aa59a extra/Makefile.in
+--- a/extra/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/extra/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -240,6 +240,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -140,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
-+++ b/extra/yassl/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -162,6 +162,7 @@
+diff -r 23e5576aa59a extra/yassl/Makefile.in
+--- a/extra/yassl/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/extra/yassl/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -142,6 +142,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -151,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
-+++ b/extra/yassl/src/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -173,6 +173,7 @@
+diff -r 23e5576aa59a extra/yassl/src/Makefile.in
+--- a/extra/yassl/src/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/extra/yassl/src/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -151,6 +151,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -162,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
-+++ b/extra/yassl/taocrypt/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -162,6 +162,7 @@
+diff -r 23e5576aa59a extra/yassl/taocrypt/Makefile.in
+--- a/extra/yassl/taocrypt/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/extra/yassl/taocrypt/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -142,6 +142,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -173,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
-+++ b/extra/yassl/taocrypt/benchmark/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -172,6 +172,7 @@
+diff -r 23e5576aa59a extra/yassl/taocrypt/benchmark/Makefile.in
+--- a/extra/yassl/taocrypt/benchmark/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/extra/yassl/taocrypt/benchmark/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -153,6 +153,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -184,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
-+++ b/extra/yassl/taocrypt/src/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -182,6 +182,7 @@
+diff -r 23e5576aa59a extra/yassl/taocrypt/src/Makefile.in
+--- a/extra/yassl/taocrypt/src/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/extra/yassl/taocrypt/src/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -164,6 +164,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -195,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
-+++ b/extra/yassl/taocrypt/test/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -172,6 +172,7 @@
+diff -r 23e5576aa59a extra/yassl/taocrypt/test/Makefile.in
+--- a/extra/yassl/taocrypt/test/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/extra/yassl/taocrypt/test/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -153,6 +153,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -206,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
-+++ b/extra/yassl/testsuite/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -175,6 +175,7 @@
+diff -r 23e5576aa59a extra/yassl/testsuite/Makefile.in
+--- a/extra/yassl/testsuite/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/extra/yassl/testsuite/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -156,6 +156,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -217,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
-+++ b/heap/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -218,6 +218,7 @@
+diff -r 23e5576aa59a heap/Makefile.in
+--- a/heap/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/heap/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -202,6 +202,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -228,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
-+++ b/include/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -183,6 +183,7 @@
+diff -r 23e5576aa59a include/Makefile.in
+--- a/include/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/include/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -160,6 +160,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -239,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
-+++ b/include/mysql_com.h	Mon Dec 22 00:31:13 2008 -0800
+diff -r 23e5576aa59a include/mysql_com.h
+--- a/include/mysql_com.h	Tue Feb 17 22:33:00 2009 -0800
++++ b/include/mysql_com.h	Tue Feb 17 22:33:23 2009 -0800
 @@ -106,6 +106,11 @@
  					   thread */
  #define REFRESH_MASTER          128     /* Remove all bin logs in the index
@@ -254,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
-+++ b/libmysql/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -278,6 +278,7 @@
+diff -r 23e5576aa59a libmysql/Makefile.in
+--- a/libmysql/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/libmysql/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -224,6 +224,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -265,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
-+++ b/libmysql_r/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -275,6 +275,7 @@
+diff -r 23e5576aa59a libmysql_r/Makefile.in
+--- a/libmysql_r/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/libmysql_r/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -221,6 +221,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -276,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
-+++ b/libmysqld/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -264,6 +264,7 @@
+diff -r 23e5576aa59a libmysqld/Makefile.in
+--- a/libmysqld/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/libmysqld/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -246,6 +246,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -287,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
-+++ b/libmysqld/examples/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -213,6 +213,7 @@
+diff -r 23e5576aa59a libmysqld/examples/Makefile.in
+--- a/libmysqld/examples/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/libmysqld/examples/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -192,6 +192,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -298,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
-+++ b/man/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -174,6 +174,7 @@
+diff -r 23e5576aa59a man/Makefile.in
+--- a/man/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/man/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -151,6 +151,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -309,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
-+++ b/myisam/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -257,6 +257,7 @@
+diff -r 23e5576aa59a myisam/Makefile.in
+--- a/myisam/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/myisam/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -235,6 +235,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -320,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
-+++ b/myisammrg/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -205,6 +205,7 @@
+diff -r 23e5576aa59a myisammrg/Makefile.in
+--- a/myisammrg/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/myisammrg/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -183,6 +183,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -331,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
-+++ b/mysql-test/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -181,6 +181,7 @@
+diff -r 23e5576aa59a mysql-test/Makefile.in
+--- a/mysql-test/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/mysql-test/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -161,6 +161,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -342,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
-+++ b/mysql-test/ndb/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -170,6 +170,7 @@
+diff -r 23e5576aa59a mysql-test/ndb/Makefile.in
+--- a/mysql-test/ndb/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/mysql-test/ndb/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -147,6 +147,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -353,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
-+++ b/mysql-test/r/information_schema.result	Mon Dec 22 00:31:13 2008 -0800
+diff -r 23e5576aa59a mysql-test/r/information_schema.result
+--- a/mysql-test/r/information_schema.result	Tue Feb 17 22:33:00 2009 -0800
++++ b/mysql-test/r/information_schema.result	Tue Feb 17 22:33:23 2009 -0800
 @@ -37,10 +37,12 @@
  select * from v1;
  c
@@ -538,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
-+++ b/mysql-test/r/information_schema_db.result	Mon Dec 22 00:31:13 2008 -0800
+diff -r 23e5576aa59a mysql-test/r/information_schema_db.result
+--- a/mysql-test/r/information_schema_db.result	Tue Feb 17 22:33:00 2009 -0800
++++ b/mysql-test/r/information_schema_db.result	Tue Feb 17 22:33:23 2009 -0800
 @@ -6,10 +6,12 @@
  show tables;
  Tables_in_information_schema
@@ -572,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
-+++ b/mysql-test/r/mysqlshow.result	Mon Dec 22 00:31:13 2008 -0800
+diff -r 23e5576aa59a mysql-test/r/mysqlshow.result
+--- a/mysql-test/r/mysqlshow.result	Tue Feb 17 22:33:00 2009 -0800
++++ b/mysql-test/r/mysqlshow.result	Tue Feb 17 22:33:23 2009 -0800
 @@ -80,10 +80,12 @@
  |                Tables                 |
  +---------------------------------------+
@@ -623,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
-+++ b/mysys/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -249,6 +249,7 @@
+diff -r 23e5576aa59a mysys/Makefile.in
+--- a/mysys/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/mysys/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -228,6 +228,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -634,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
-+++ b/ndb/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -191,6 +191,7 @@
+diff -r 23e5576aa59a ndb/Makefile.in
+--- a/ndb/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -171,6 +171,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -645,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
-+++ b/ndb/docs/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -172,6 +172,7 @@
+diff -r 23e5576aa59a ndb/docs/Makefile.in
+--- a/ndb/docs/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/docs/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -149,6 +149,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -656,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
-+++ b/ndb/include/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -202,6 +202,7 @@
+diff -r 23e5576aa59a ndb/include/Makefile.in
+--- a/ndb/include/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/include/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -179,6 +179,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -667,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
-+++ b/ndb/src/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -220,6 +220,7 @@
+diff -r 23e5576aa59a ndb/src/Makefile.in
+--- a/ndb/src/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -204,6 +204,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -678,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
-+++ b/ndb/src/common/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -193,6 +193,7 @@
+diff -r 23e5576aa59a ndb/src/common/Makefile.in
+--- a/ndb/src/common/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/common/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -174,6 +174,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -689,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
-+++ b/ndb/src/common/debugger/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -225,6 +225,7 @@
+diff -r 23e5576aa59a ndb/src/common/debugger/Makefile.in
+--- a/ndb/src/common/debugger/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/common/debugger/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -206,6 +206,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -700,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
-+++ b/ndb/src/common/debugger/signaldata/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -233,6 +233,7 @@
+diff -r 23e5576aa59a ndb/src/common/debugger/signaldata/Makefile.in
+--- a/ndb/src/common/debugger/signaldata/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/common/debugger/signaldata/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -211,6 +211,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -711,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
-+++ b/ndb/src/common/logger/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -219,6 +219,7 @@
+diff -r 23e5576aa59a ndb/src/common/logger/Makefile.in
+--- a/ndb/src/common/logger/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/common/logger/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -197,6 +197,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -722,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
-+++ b/ndb/src/common/mgmcommon/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -233,6 +233,7 @@
+diff -r 23e5576aa59a ndb/src/common/mgmcommon/Makefile.in
+--- a/ndb/src/common/mgmcommon/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/common/mgmcommon/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -211,6 +211,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -733,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
-+++ b/ndb/src/common/portlib/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -243,6 +243,7 @@
+diff -r 23e5576aa59a ndb/src/common/portlib/Makefile.in
+--- a/ndb/src/common/portlib/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/common/portlib/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -222,6 +222,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -744,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
-+++ b/ndb/src/common/transporter/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -219,6 +219,7 @@
+diff -r 23e5576aa59a ndb/src/common/transporter/Makefile.in
+--- a/ndb/src/common/transporter/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/common/transporter/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -197,6 +197,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -755,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
-+++ b/ndb/src/common/util/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -235,6 +235,7 @@
+diff -r 23e5576aa59a ndb/src/common/util/Makefile.in
+--- a/ndb/src/common/util/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/common/util/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -217,6 +217,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -766,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
-+++ b/ndb/src/cw/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -176,6 +176,7 @@
+diff -r 23e5576aa59a ndb/src/cw/Makefile.in
+--- a/ndb/src/cw/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/cw/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -156,6 +156,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -777,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
-+++ b/ndb/src/cw/cpcd/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -226,6 +226,7 @@
+diff -r 23e5576aa59a ndb/src/cw/cpcd/Makefile.in
+--- a/ndb/src/cw/cpcd/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/cw/cpcd/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -207,6 +207,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -788,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
-+++ b/ndb/src/kernel/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -246,6 +246,7 @@
+diff -r 23e5576aa59a ndb/src/kernel/Makefile.in
+--- a/ndb/src/kernel/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/kernel/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -227,6 +227,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -799,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
-+++ b/ndb/src/kernel/blocks/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -176,6 +176,7 @@
+diff -r 23e5576aa59a ndb/src/kernel/blocks/Makefile.in
+--- a/ndb/src/kernel/blocks/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/kernel/blocks/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -156,6 +156,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -810,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
-+++ b/ndb/src/kernel/blocks/backup/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -218,6 +218,7 @@
+diff -r 23e5576aa59a ndb/src/kernel/blocks/backup/Makefile.in
+--- a/ndb/src/kernel/blocks/backup/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/kernel/blocks/backup/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -196,6 +196,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -821,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
-+++ b/ndb/src/kernel/blocks/cmvmi/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -218,6 +218,7 @@
+diff -r 23e5576aa59a ndb/src/kernel/blocks/cmvmi/Makefile.in
+--- a/ndb/src/kernel/blocks/cmvmi/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/kernel/blocks/cmvmi/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -196,6 +196,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -832,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
-+++ b/ndb/src/kernel/blocks/dbacc/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -218,6 +218,7 @@
+diff -r 23e5576aa59a ndb/src/kernel/blocks/dbacc/Makefile.in
+--- a/ndb/src/kernel/blocks/dbacc/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/kernel/blocks/dbacc/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -196,6 +196,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -843,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
-+++ b/ndb/src/kernel/blocks/dbdict/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -228,6 +228,7 @@
+diff -r 23e5576aa59a ndb/src/kernel/blocks/dbdict/Makefile.in
+--- a/ndb/src/kernel/blocks/dbdict/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/kernel/blocks/dbdict/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -206,6 +206,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -854,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
-+++ b/ndb/src/kernel/blocks/dbdih/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -225,6 +225,7 @@
+diff -r 23e5576aa59a ndb/src/kernel/blocks/dbdih/Makefile.in
+--- a/ndb/src/kernel/blocks/dbdih/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/kernel/blocks/dbdih/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -203,6 +203,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -865,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
-+++ b/ndb/src/kernel/blocks/dblqh/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -226,6 +226,7 @@
+diff -r 23e5576aa59a ndb/src/kernel/blocks/dblqh/Makefile.in
+--- a/ndb/src/kernel/blocks/dblqh/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/kernel/blocks/dblqh/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -204,6 +204,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -876,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
-+++ b/ndb/src/kernel/blocks/dbtc/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -218,6 +218,7 @@
+diff -r 23e5576aa59a ndb/src/kernel/blocks/dbtc/Makefile.in
+--- a/ndb/src/kernel/blocks/dbtc/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/kernel/blocks/dbtc/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -196,6 +196,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -887,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
-+++ b/ndb/src/kernel/blocks/dbtup/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -226,6 +226,7 @@
+diff -r 23e5576aa59a ndb/src/kernel/blocks/dbtup/Makefile.in
+--- a/ndb/src/kernel/blocks/dbtup/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/kernel/blocks/dbtup/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -204,6 +204,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -898,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
-+++ b/ndb/src/kernel/blocks/dbtux/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -221,6 +221,7 @@
+diff -r 23e5576aa59a ndb/src/kernel/blocks/dbtux/Makefile.in
+--- a/ndb/src/kernel/blocks/dbtux/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/kernel/blocks/dbtux/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -199,6 +199,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -909,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
-+++ b/ndb/src/kernel/blocks/dbutil/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -218,6 +218,7 @@
+diff -r 23e5576aa59a ndb/src/kernel/blocks/dbutil/Makefile.in
+--- a/ndb/src/kernel/blocks/dbutil/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/kernel/blocks/dbutil/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -196,6 +196,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -920,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
-+++ b/ndb/src/kernel/blocks/ndbcntr/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -219,6 +219,7 @@
+diff -r 23e5576aa59a ndb/src/kernel/blocks/ndbcntr/Makefile.in
+--- a/ndb/src/kernel/blocks/ndbcntr/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/kernel/blocks/ndbcntr/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -197,6 +197,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -931,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
-+++ b/ndb/src/kernel/blocks/ndbfs/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -219,6 +219,7 @@
+diff -r 23e5576aa59a ndb/src/kernel/blocks/ndbfs/Makefile.in
+--- a/ndb/src/kernel/blocks/ndbfs/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/kernel/blocks/ndbfs/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -197,6 +197,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -942,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
-+++ b/ndb/src/kernel/blocks/qmgr/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -218,6 +218,7 @@
+diff -r 23e5576aa59a ndb/src/kernel/blocks/qmgr/Makefile.in
+--- a/ndb/src/kernel/blocks/qmgr/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/kernel/blocks/qmgr/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -196,6 +196,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -953,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
-+++ b/ndb/src/kernel/blocks/suma/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -218,6 +218,7 @@
+diff -r 23e5576aa59a ndb/src/kernel/blocks/suma/Makefile.in
+--- a/ndb/src/kernel/blocks/suma/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/kernel/blocks/suma/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -196,6 +196,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -964,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
-+++ b/ndb/src/kernel/blocks/trix/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -218,6 +218,7 @@
+diff -r 23e5576aa59a ndb/src/kernel/blocks/trix/Makefile.in
+--- a/ndb/src/kernel/blocks/trix/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/kernel/blocks/trix/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -196,6 +196,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -975,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
-+++ b/ndb/src/kernel/error/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -227,6 +227,7 @@
+diff -r 23e5576aa59a ndb/src/kernel/error/Makefile.in
+--- a/ndb/src/kernel/error/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/kernel/error/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -206,6 +206,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -986,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
-+++ b/ndb/src/kernel/vm/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -229,6 +229,7 @@
+diff -r 23e5576aa59a ndb/src/kernel/vm/Makefile.in
+--- a/ndb/src/kernel/vm/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/kernel/vm/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -207,6 +207,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -997,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
-+++ b/ndb/src/mgmapi/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -226,6 +226,7 @@
+diff -r 23e5576aa59a ndb/src/mgmapi/Makefile.in
+--- a/ndb/src/mgmapi/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/mgmapi/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -205,6 +205,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -1008,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
-+++ b/ndb/src/mgmclient/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -236,6 +236,7 @@
+diff -r 23e5576aa59a ndb/src/mgmclient/Makefile.in
+--- a/ndb/src/mgmclient/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/mgmclient/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -216,6 +216,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -1019,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
-+++ b/ndb/src/mgmsrv/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -232,6 +232,7 @@
+diff -r 23e5576aa59a ndb/src/mgmsrv/Makefile.in
+--- a/ndb/src/mgmsrv/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/mgmsrv/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -213,6 +213,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -1030,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
-+++ b/ndb/src/ndbapi/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -236,6 +236,7 @@
+diff -r 23e5576aa59a ndb/src/ndbapi/Makefile.in
+--- a/ndb/src/ndbapi/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/src/ndbapi/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -215,6 +215,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -1041,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
-+++ b/ndb/test/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -176,6 +176,7 @@
+diff -r 23e5576aa59a ndb/test/Makefile.in
+--- a/ndb/test/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/test/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -156,6 +156,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -1052,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
-+++ b/ndb/test/ndbapi/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -613,6 +613,7 @@
+diff -r 23e5576aa59a ndb/test/ndbapi/Makefile.in
+--- a/ndb/test/ndbapi/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/test/ndbapi/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -595,6 +595,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -1063,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
-+++ b/ndb/test/ndbapi/bank/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -305,6 +305,7 @@
+diff -r 23e5576aa59a ndb/test/ndbapi/bank/Makefile.in
+--- a/ndb/test/ndbapi/bank/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/test/ndbapi/bank/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -282,6 +282,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -1074,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
-+++ b/ndb/test/run-test/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -264,6 +264,7 @@
+diff -r 23e5576aa59a ndb/test/run-test/Makefile.in
+--- a/ndb/test/run-test/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/test/run-test/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -243,6 +243,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -1085,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
-+++ b/ndb/test/src/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -234,6 +234,7 @@
+diff -r 23e5576aa59a ndb/test/src/Makefile.in
+--- a/ndb/test/src/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/test/src/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -213,6 +213,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -1096,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
-+++ b/ndb/test/tools/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -347,6 +347,7 @@
+diff -r 23e5576aa59a ndb/test/tools/Makefile.in
+--- a/ndb/test/tools/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/test/tools/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -325,6 +325,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -1107,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
-+++ b/ndb/tools/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -333,6 +333,7 @@
+diff -r 23e5576aa59a ndb/tools/Makefile.in
+--- a/ndb/tools/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/ndb/tools/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -344,6 +344,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -1118,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
-+++ b/netware/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -221,6 +221,7 @@
+diff -r 23e5576aa59a netware/Makefile.in
+--- a/netware/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/netware/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -199,6 +199,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -1129,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
-+++ b/os2/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -176,6 +176,7 @@
+diff -r 23e5576aa59a os2/Makefile.in
+--- a/os2/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/os2/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -156,6 +156,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -1140,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
-+++ b/os2/include/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -176,6 +176,7 @@
+diff -r 23e5576aa59a os2/include/Makefile.in
+--- a/os2/include/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/os2/include/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -156,6 +156,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -1151,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
-+++ b/os2/include/sys/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -167,6 +167,7 @@
+diff -r 23e5576aa59a os2/include/sys/Makefile.in
+--- a/os2/include/sys/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/os2/include/sys/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -144,6 +144,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -1162,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
++++ b/patch_info/userstats.info	Tue Feb 17 22:33:23 2009 -0800
 @@ -0,0 +1,14 @@
 +File=userstatsv2.patch
 +Name=SHOW USER/TABLE/INDEX statistics
@@ -1180,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
-+++ b/pstack/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -215,6 +215,7 @@
+diff -r 23e5576aa59a pstack/Makefile.in
+--- a/pstack/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/pstack/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -196,6 +196,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -1191,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
-+++ b/pstack/aout/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -157,6 +157,7 @@
+diff -r 23e5576aa59a pstack/aout/Makefile.in
+--- a/pstack/aout/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/pstack/aout/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -134,6 +134,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -1202,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
-+++ b/regex/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -199,6 +199,7 @@
+diff -r 23e5576aa59a regex/Makefile.in
+--- a/regex/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/regex/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -180,6 +180,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -1213,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
-+++ b/scripts/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -198,6 +198,7 @@
+diff -r 23e5576aa59a scripts/Makefile.in
+--- a/scripts/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/scripts/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -176,6 +176,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -1224,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
-+++ b/server-tools/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -175,6 +175,7 @@
+diff -r 23e5576aa59a server-tools/Makefile.in
+--- a/server-tools/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/server-tools/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -155,6 +155,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -1235,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
-+++ b/server-tools/instance-manager/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -223,6 +223,7 @@
+diff -r 23e5576aa59a server-tools/instance-manager/Makefile.in
+--- a/server-tools/instance-manager/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/server-tools/instance-manager/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -205,6 +205,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -1246,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
-+++ b/sql/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -285,6 +285,7 @@
+diff -r 23e5576aa59a sql/Makefile.in
+--- a/sql/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/sql/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -274,6 +274,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -1257,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
-+++ b/sql/ha_innodb.cc	Mon Dec 22 00:31:13 2008 -0800
-@@ -3316,6 +3316,8 @@
+diff -r 23e5576aa59a sql/ha_innodb.cc
+--- a/sql/ha_innodb.cc	Tue Feb 17 22:33:00 2009 -0800
++++ b/sql/ha_innodb.cc	Tue Feb 17 22:33:23 2009 -0800
+@@ -3324,6 +3324,8 @@
  
  	error = row_insert_for_mysql((byte*) record, prebuilt);
  
@@ -1269,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 @@
  		}
  	}
  
@@ -1278,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);
@@ -1287,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;
@@ -1297,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
-+++ b/sql/ha_myisam.cc	Mon Dec 22 00:31:13 2008 -0800
+diff -r 23e5576aa59a sql/ha_myisam.cc
+--- a/sql/ha_myisam.cc	Tue Feb 17 22:33:00 2009 -0800
++++ b/sql/ha_myisam.cc	Tue Feb 17 22:33:23 2009 -0800
 @@ -670,7 +670,9 @@
      if ((error= update_auto_increment()))
        return error;
@@ -1459,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
-+++ b/sql/handler.cc	Mon Dec 22 00:31:13 2008 -0800
+diff -r 23e5576aa59a sql/handler.cc
+--- a/sql/handler.cc	Tue Feb 17 22:33:00 2009 -0800
++++ b/sql/handler.cc	Tue Feb 17 22:33:23 2009 -0800
 @@ -725,6 +725,8 @@
      if (cookie)
        tc_log->unlog(cookie, xid);
@@ -1608,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
-+++ b/sql/handler.h	Mon Dec 22 00:31:13 2008 -0800
+diff -r 23e5576aa59a sql/handler.h
+--- a/sql/handler.h	Tue Feb 17 22:33:00 2009 -0800
++++ b/sql/handler.h	Tue Feb 17 22:33:23 2009 -0800
 @@ -30,6 +30,10 @@
  #if defined(HAVE_BERKELEY_DB) || defined(HAVE_INNOBASE_DB) || \
      defined(HAVE_NDBCLUSTER_DB)
@@ -1668,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
-+++ b/sql/lex.h	Mon Dec 22 00:31:13 2008 -0800
+diff -r 23e5576aa59a sql/lex.h
+--- a/sql/lex.h	Tue Feb 17 22:33:00 2009 -0800
++++ b/sql/lex.h	Tue Feb 17 22:33:23 2009 -0800
 @@ -109,6 +109,7 @@
    { "CHECKSUM",		SYM(CHECKSUM_SYM)},
    { "CIPHER",		SYM(CIPHER_SYM)},
@@ -1711,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
-+++ b/sql/log.cc	Mon Dec 22 00:31:13 2008 -0800
-@@ -1899,18 +1899,24 @@
+diff -r 23e5576aa59a sql/log.cc
+--- a/sql/log.cc	Tue Feb 17 22:33:00 2009 -0800
++++ b/sql/log.cc	Tue Feb 17 22:33:23 2009 -0800
+@@ -1954,18 +1954,24 @@
  			   thd->current_insert_id);
  	if (e.write(file))
  	  goto err;
@@ -1739,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;
@@ -1748,7 +1898,7 @@ diff -r 1270c564d514 sql/log.cc
  	}
        }
      }
-@@ -1936,6 +1944,8 @@
+@@ -1991,6 +1999,8 @@
  
      if (event_info->write(file))
        goto err;
@@ -1757,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;
@@ -1765,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;
@@ -1773,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;
@@ -1782,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;
@@ -1791,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
-+++ b/sql/mysql_priv.h	Mon Dec 22 00:31:13 2008 -0800
-@@ -818,7 +818,15 @@
+diff -r 23e5576aa59a sql/mysql_priv.h
+--- a/sql/mysql_priv.h	Tue Feb 17 22:33:00 2009 -0800
++++ b/sql/mysql_priv.h	Tue Feb 17 22:33:23 2009 -0800
+@@ -823,7 +823,15 @@
  bool multi_delete_set_locks_and_link_aux_tables(LEX *lex);
  void init_max_user_conn(void);
  void init_update_queries(void);
@@ -1810,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;
@@ -1818,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;
@@ -1826,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;
@@ -1841,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
-+++ b/sql/mysqld.cc	Mon Dec 22 00:31:13 2008 -0800
-@@ -414,6 +414,7 @@
+diff -r 23e5576aa59a sql/mysqld.cc
+--- a/sql/mysqld.cc	Tue Feb 17 22:33:00 2009 -0800
++++ b/sql/mysqld.cc	Tue Feb 17 22:33:23 2009 -0800
+@@ -415,6 +415,7 @@
  uint    opt_large_page_size= 0;
  my_bool opt_old_style_user_limits= 0, trust_function_creators= 0;
  char* opt_slow_logname= 0;
@@ -1852,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;
@@ -1860,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;
@@ -1871,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();
@@ -1882,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);
@@ -1893,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
@@ -1904,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);
    }
@@ -1915,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();
@@ -1924,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);
@@ -1932,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,
@@ -1940,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},
@@ -1951,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
-+++ b/sql/set_var.cc	Mon Dec 22 00:31:13 2008 -0800
-@@ -323,6 +323,7 @@
+diff -r 23e5576aa59a sql/set_var.cc
+--- a/sql/set_var.cc	Tue Feb 17 22:33:00 2009 -0800
++++ b/sql/set_var.cc	Tue Feb 17 22:33:23 2009 -0800
+@@ -325,6 +325,7 @@
  sys_var_thd_ulong	sys_read_buff_size("read_buffer_size",
  					   &SV::read_buff_size);
  sys_var_bool_ptr	sys_readonly("read_only", &opt_readonly);
@@ -1962,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,
@@ -1970,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},
@@ -1978,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
-+++ b/sql/share/Makefile.in	Mon Dec 22 00:31:13 2008 -0800
-@@ -167,6 +167,7 @@
+diff -r 23e5576aa59a sql/share/Makefile.in
+--- a/sql/share/Makefile.in	Tue Feb 17 22:33:00 2009 -0800
++++ b/sql/share/Makefile.in	Tue Feb 17 22:33:23 2009 -0800
+@@ -144,6 +144,7 @@
  LIBDL = @LIBDL@
  LIBEDIT_LOBJECTS = @LIBEDIT_LOBJECTS@
  LIBOBJS = @LIBOBJS@
@@ -1989,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
-+++ b/sql/sql_base.cc	Mon Dec 22 00:31:13 2008 -0800
+diff -r 23e5576aa59a sql/sql_base.cc
+--- a/sql/sql_base.cc	Tue Feb 17 22:33:00 2009 -0800
++++ b/sql/sql_base.cc	Tue Feb 17 22:33:23 2009 -0800
 @@ -624,6 +624,12 @@
    DBUG_ENTER("close_thread_table");
    DBUG_ASSERT(table->key_read == 0);
@@ -2015,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
-+++ b/sql/sql_class.cc	Mon Dec 22 00:31:13 2008 -0800
+diff -r 23e5576aa59a sql/sql_class.cc
+--- a/sql/sql_class.cc	Tue Feb 17 22:33:00 2009 -0800
++++ b/sql/sql_class.cc	Tue Feb 17 22:33:23 2009 -0800
 @@ -236,6 +236,13 @@
    bzero(ha_data, sizeof(ha_data));
    mysys_var=0;
@@ -2197,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
-+++ b/sql/sql_class.h	Mon Dec 22 00:31:13 2008 -0800
-@@ -1298,6 +1298,8 @@
+diff -r 23e5576aa59a sql/sql_class.h
+--- a/sql/sql_class.h	Tue Feb 17 22:33:00 2009 -0800
++++ b/sql/sql_class.h	Tue Feb 17 22:33:23 2009 -0800
+@@ -1299,6 +1299,8 @@
      first byte of the packet in do_command()
    */
    enum enum_server_command command;
@@ -2209,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;
@@ -2218,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.
@@ -2268,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();
@@ -2280,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;
@@ -2294,7 +2444,7 @@ diff -r 1270c564d514 sql/sql_class.h
  
  public:
    /**
-@@ -1921,6 +1979,11 @@
+@@ -1922,6 +1980,11 @@
    MEM_ROOT main_mem_root;
  };
  
@@ -2306,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
-+++ b/sql/sql_delete.cc	Mon Dec 22 00:31:13 2008 -0800
+diff -r 23e5576aa59a sql/sql_delete.cc
+--- a/sql/sql_delete.cc	Tue Feb 17 22:33:00 2009 -0800
++++ b/sql/sql_delete.cc	Tue Feb 17 22:33:23 2009 -0800
 @@ -358,6 +358,7 @@
      send_ok(thd,deleted);
      DBUG_PRINT("info",("%ld records deleted",(long) deleted));
@@ -2325,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
-+++ b/sql/sql_insert.cc	Mon Dec 22 00:31:13 2008 -0800
+diff -r 23e5576aa59a sql/sql_insert.cc
+--- a/sql/sql_insert.cc	Tue Feb 17 22:33:00 2009 -0800
++++ b/sql/sql_insert.cc	Tue Feb 17 22:33:23 2009 -0800
 @@ -989,6 +989,7 @@
      thd->row_count_func= info.copied + info.deleted + updated;
      ::send_ok(thd, (ulong) thd->row_count_func, id, buff);
@@ -2344,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
-+++ b/sql/sql_lex.h	Mon Dec 22 00:31:13 2008 -0800
+diff -r 23e5576aa59a sql/sql_lex.h
+--- a/sql/sql_lex.h	Tue Feb 17 22:33:00 2009 -0800
++++ b/sql/sql_lex.h	Tue Feb 17 22:33:23 2009 -0800
 @@ -101,6 +101,9 @@
      When a command is added here, be sure it's also added in mysqld.cc
      in "struct show_var_st status_vars[]= {" ...
@@ -2357,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
-+++ b/sql/sql_parse.cc	Mon Dec 22 00:31:13 2008 -0800
+diff -r 23e5576aa59a sql/sql_parse.cc
+--- a/sql/sql_parse.cc	Tue Feb 17 22:33:00 2009 -0800
++++ b/sql/sql_parse.cc	Tue Feb 17 22:33:23 2009 -0800
 @@ -78,6 +78,12 @@
  			       const char *table_name);
  static bool check_show_create_table_access(THD *thd, TABLE_LIST *table);
@@ -2848,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);
  
@@ -2857,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);
@@ -2880,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);
@@ -2888,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);
@@ -2897,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
  
@@ -2911,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;
@@ -2921,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;
  
@@ -2937,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))
        {
<Skipped 499 lines>
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/percona-server.git/commitdiff/431f68fe79a66d5dfdd53f2655709e6c925fbc22



More information about the pld-cvs-commit mailing list