List:Commits« Previous MessageNext Message »
From:Inaam Rana Date:April 11 2011 3:58pm
Subject:bzr push into mysql-trunk-innodb branch (inaam.rana:3572 to 3573)
View as plain text  
 3573 Inaam Rana	2011-04-11
      PFS keys for trx_sys::lock and hash_table::lock should be defined
      under UNIV_PFS_RWLOCK instead of UNIV_PFS_MUTEX.
      
      Approved by: Jimmy

    modified:
      storage/innobase/ha/hash0hash.c
      storage/innobase/handler/ha_innodb.cc
      storage/innobase/include/sync0rw.h
      storage/innobase/include/sync0sync.h
      storage/innobase/trx/trx0sys.c
 3572 Marko Mäkelä	2011-04-11 [merge]
      Merge mysql-5.5-innodb to mysql-trunk-innodb.

    added:
      mysql-test/suite/innodb/r/innodb_bug59641.result
      mysql-test/suite/innodb/t/innodb_bug59641.test
    modified:
      client/mysqltest.cc
      sql/sql_class.cc
      storage/innobase/handler/ha_innodb.cc
      storage/innobase/handler/ha_innodb.h
      storage/innobase/handler/handler0alter.cc
      storage/innobase/include/trx0sys.h
      storage/innobase/include/trx0trx.h
      storage/innobase/include/trx0undo.h
      storage/innobase/lock/lock0lock.c
      storage/innobase/log/log0log.c
      storage/innobase/trx/trx0sys.c
      storage/innobase/trx/trx0trx.c
      storage/innobase/trx/trx0undo.c
=== modified file 'storage/innobase/ha/hash0hash.c'
--- a/storage/innobase/ha/hash0hash.c	revid:marko.makela@stripped11145747-151onieu2x5pxivx
+++ b/storage/innobase/ha/hash0hash.c	revid:inaam.rana@strippedtrzwlhbcj
@@ -34,9 +34,11 @@ Created 5/20/1997 Heikki Tuuri
 
 # ifdef UNIV_PFS_MUTEX
 UNIV_INTERN mysql_pfs_key_t	hash_table_mutex_key;
-UNIV_INTERN mysql_pfs_key_t	hash_table_rw_lock_key;
 # endif /* UNIV_PFS_MUTEX */
 
+# ifdef UNIV_PFS_RWLOCK
+UNIV_INTERN mysql_pfs_key_t	hash_table_rw_lock_key;
+# endif /* UNIV_PFS_RWLOCK */
 /************************************************************//**
 Reserves the mutex for a fold value in a hash table. */
 UNIV_INTERN

=== modified file 'storage/innobase/handler/ha_innodb.cc'
--- a/storage/innobase/handler/ha_innodb.cc	revid:marko.makela@strippedpxivx
+++ b/storage/innobase/handler/ha_innodb.cc	revid:inaam.rana@stripped
@@ -323,7 +323,8 @@ static PSI_rwlock_info all_innodb_rwlock
 	{&trx_purge_latch_key, "trx_purge_latch", 0},
 	{&index_tree_rw_lock_key, "index_tree_rw_lock", 0},
 	{&trx_sys_rw_lock_key, "trx_sys_lock", 0},
-	{&dict_table_stats_latch_key, "dict_table_stats", 0}
+	{&dict_table_stats_latch_key, "dict_table_stats", 0},
+	{&hash_table_rw_lock_key, "hash table locks", 0}
 };
 # endif /* UNIV_PFS_RWLOCK */
 

=== modified file 'storage/innobase/include/sync0rw.h'
--- a/storage/innobase/include/sync0rw.h	revid:marko.makela@stripped
+++ b/storage/innobase/include/sync0rw.h	revid:inaam.rana@oracle.com-20110411155535-u3np9whtrzwlhbcj
@@ -123,6 +123,8 @@ extern	mysql_pfs_key_t	trx_i_s_cache_loc
 extern	mysql_pfs_key_t	trx_purge_latch_key;
 extern	mysql_pfs_key_t	index_tree_rw_lock_key;
 extern	mysql_pfs_key_t	dict_table_stats_latch_key;
+extern  mysql_pfs_key_t trx_sys_rw_lock_key;
+extern  mysql_pfs_key_t hash_table_rw_lock_key;
 #endif /* UNIV_PFS_RWLOCK */
 
 

=== modified file 'storage/innobase/include/sync0sync.h'
--- a/storage/innobase/include/sync0sync.h	revid:marko.makela@stripped747-151onieu2x5pxivx
+++ b/storage/innobase/include/sync0sync.h	revid:inaam.rana@strippedtrzwlhbcj
@@ -112,7 +112,6 @@ extern mysql_pfs_key_t	trx_undo_mutex_ke
 extern mysql_pfs_key_t	trx_mutex_key;
 extern mysql_pfs_key_t	lock_sys_mutex_key;
 extern mysql_pfs_key_t	lock_sys_wait_mutex_key;
-extern mysql_pfs_key_t	trx_sys_rw_lock_key;
 extern mysql_pfs_key_t	read_view_mutex_key;
 extern mysql_pfs_key_t	srv_sys_mutex_key;
 extern mysql_pfs_key_t	srv_sys_tasks_mutex_key;
@@ -120,7 +119,6 @@ extern mysql_pfs_key_t	srv_conc_mutex_ke
 extern mysql_pfs_key_t	event_os_mutex_key;
 extern mysql_pfs_key_t	ut_list_mutex_key;
 extern mysql_pfs_key_t	os_mutex_key;
-
 #endif /* UNIV_PFS_MUTEX */
 
 /******************************************************************//**

=== modified file 'storage/innobase/trx/trx0sys.c'
--- a/storage/innobase/trx/trx0sys.c	revid:marko.makela@stripped110411145747-151onieu2x5pxivx
+++ b/storage/innobase/trx/trx0sys.c	revid:inaam.rana@stripped9whtrzwlhbcj
@@ -132,12 +132,15 @@ static const ulint	FILE_FORMAT_NAME_N
 /* Key to register the mutex with performance schema */
 UNIV_INTERN mysql_pfs_key_t	trx_doublewrite_mutex_key;
 UNIV_INTERN mysql_pfs_key_t	file_format_max_mutex_key;
-/* Key to register the trx_sys->lock with performance schema */
-UNIV_INTERN mysql_pfs_key_t	trx_sys_rw_lock_key;
 /* Key to register the trx_sys->read_view_mutex with performance schema */
 UNIV_INTERN mysql_pfs_key_t	read_view_mutex_key;
 #endif /* UNIV_PFS_MUTEX */
 
+#ifdef UNIV_PFS_RWLOCK
+/* Key to register the trx_sys->lock with performance schema */
+UNIV_INTERN mysql_pfs_key_t	trx_sys_rw_lock_key;
+#endif /* UNIV_PFS_RWLOCK */
+
 #ifndef UNIV_HOTBACKUP
 /** This is used to track the maximum file format id known to InnoDB. It's
 updated via SET GLOBAL innodb_file_format_max = 'x' or when we open

Attachment: [text/bzr-bundle] bzr/inaam.rana@oracle.com-20110411155535-u3np9whtrzwlhbcj.bundle
Thread
bzr push into mysql-trunk-innodb branch (inaam.rana:3572 to 3573) Inaam Rana11 Apr