#!!! notice !!!
# Any small change to this file in the main branch
# should be done or reviewed by the maintainer!
-diff -ruN a/storage/innobase/handler/ha_innodb.cc b/storage/innobase/handler/ha_innodb.cc
---- a/storage/innobase/handler/ha_innodb.cc 2010-12-03 17:34:35.285040381 +0900
-+++ b/storage/innobase/handler/ha_innodb.cc 2010-12-03 17:35:12.974975252 +0900
-@@ -9498,8 +9498,8 @@
+--- a/storage/innobase/handler/ha_innodb.cc
++++ b/storage/innobase/handler/ha_innodb.cc
+@@ -9709,9 +9709,8 @@
rw_lock_wait_time += mutex->lspent_time;
}
#else /* UNIV_DEBUG */
- buf1len= (uint) my_snprintf(buf1, sizeof(buf1), "%s:%lu",
-- mutex->cfile_name, (ulong) mutex->cline);
+- innobase_basename(mutex->cfile_name),
+- (ulong) mutex->cline);
+ buf1len= (uint) my_snprintf(buf1, sizeof(buf1), "%s",
+ mutex->cmutex_name);
buf2len= (uint) my_snprintf(buf2, sizeof(buf2), "os_waits=%lu",
(ulong) mutex->count_os_wait);
-@@ -9514,9 +9514,8 @@
+@@ -9726,10 +9725,8 @@
if (block_mutex) {
buf1len = (uint) my_snprintf(buf1, sizeof buf1,
- "combined %s:%lu",
-- block_mutex->cfile_name,
+- innobase_basename(
+- block_mutex->cfile_name),
- (ulong) block_mutex->cline);
+ "combined %s",
+ block_mutex->cmutex_name);
buf2len = (uint) my_snprintf(buf2, sizeof buf2,
"os_waits=%lu",
(ulong) block_mutex_oswait_count);
-@@ -9545,8 +9544,8 @@
+@@ -9758,9 +9755,8 @@
continue;
}
- buf1len = my_snprintf(buf1, sizeof buf1, "%s:%lu",
-- lock->cfile_name, (ulong) lock->cline);
+- innobase_basename(lock->cfile_name),
+- (ulong) lock->cline);
+ buf1len = my_snprintf(buf1, sizeof buf1, "%s",
+ lock->lock_name);
buf2len = my_snprintf(buf2, sizeof buf2, "os_waits=%lu",
(ulong) lock->count_os_wait);
-@@ -9560,9 +9559,8 @@
+@@ -9774,10 +9770,8 @@
if (block_lock) {
buf1len = (uint) my_snprintf(buf1, sizeof buf1,
- "combined %s:%lu",
-- block_lock->cfile_name,
+- innobase_basename(
+- block_lock->cfile_name),
- (ulong) block_lock->cline);
+ "combined %s",
+ block_lock->lock_name);
buf2len = (uint) my_snprintf(buf2, sizeof buf2,
"os_waits=%lu",
(ulong) block_lock_oswait_count);
-diff -ruN a/storage/innobase/include/sync0rw.h b/storage/innobase/include/sync0rw.h
---- a/storage/innobase/include/sync0rw.h 2010-12-03 15:49:59.225953164 +0900
-+++ b/storage/innobase/include/sync0rw.h 2010-12-03 17:35:12.978024458 +0900
+--- a/storage/innobase/include/sync0rw.h
++++ b/storage/innobase/include/sync0rw.h
@@ -138,14 +138,14 @@
# ifdef UNIV_DEBUG
# ifdef UNIV_SYNC_DEBUG
/******************************************************************//**
Calling this function is obligatory only if the memory buffer containing
the rw-lock is freed. Removes an rw-lock object from the global list. The
-@@ -610,7 +610,8 @@
+@@ -611,7 +611,8 @@
struct PSI_rwlock *pfs_psi;/*!< The instrumentation hook */
#endif
ulint count_os_wait; /*!< Count of os_waits. May not be accurate */
/* last s-lock file/line is not guaranteed to be correct */
const char* last_s_file_name;/*!< File name where last s-locked */
const char* last_x_file_name;/*!< File name where last x-locked */
-@@ -621,7 +622,7 @@
+@@ -622,7 +623,7 @@
are at the start of this struct, thus we can
peek this field without causing much memory
bus traffic */
unsigned last_s_line:14; /*!< Line number where last time s-locked */
unsigned last_x_line:14; /*!< Line number where last time x-locked */
#ifdef UNIV_DEBUG
-@@ -691,10 +692,10 @@
+@@ -693,10 +694,10 @@
# ifdef UNIV_SYNC_DEBUG
ulint level, /*!< in: level */
# endif /* UNIV_SYNC_DEBUG */
/******************************************************************//**
Performance schema instrumented wrap function for rw_lock_x_lock_func()
-diff -ruN a/storage/innobase/include/sync0rw.ic b/storage/innobase/include/sync0rw.ic
---- a/storage/innobase/include/sync0rw.ic 2010-11-03 07:01:13.000000000 +0900
-+++ b/storage/innobase/include/sync0rw.ic 2010-12-03 17:35:12.980024605 +0900
-@@ -640,10 +640,10 @@
+--- a/storage/innobase/include/sync0rw.ic
++++ b/storage/innobase/include/sync0rw.ic
+@@ -641,10 +641,10 @@
# ifdef UNIV_SYNC_DEBUG
ulint level, /*!< in: level */
# endif /* UNIV_SYNC_DEBUG */
{
/* Initialize the rwlock for performance schema */
lock->pfs_psi = (PSI_server && PFS_IS_INSTRUMENTED(key))
-@@ -656,10 +656,10 @@
+@@ -657,10 +657,10 @@
# ifdef UNIV_SYNC_DEBUG
level,
# endif /* UNIV_SYNC_DEBUG */
}
/******************************************************************//**
Performance schema instrumented wrap function for rw_lock_x_lock_func()
-diff -ruN a/storage/innobase/include/sync0sync.h b/storage/innobase/include/sync0sync.h
---- a/storage/innobase/include/sync0sync.h 2010-12-03 15:49:59.227955503 +0900
-+++ b/storage/innobase/include/sync0sync.h 2010-12-03 17:35:12.982023946 +0900
-@@ -159,14 +159,14 @@
+--- a/storage/innobase/include/sync0sync.h
++++ b/storage/innobase/include/sync0sync.h
+@@ -158,14 +158,14 @@
# ifdef UNIV_DEBUG
# ifdef UNIV_SYNC_DEBUG
# define mutex_create(K, M, level) \
# endif /* UNIV_DEBUG */
# define mutex_enter(M) \
-@@ -186,14 +186,14 @@
+@@ -185,14 +185,14 @@
# ifdef UNIV_DEBUG
# ifdef UNIV_SYNC_DEBUG
# define mutex_create(K, M, level) \
# endif /* UNIV_DEBUG */
# define mutex_enter(M) mutex_enter_func((M), __FILE__, __LINE__)
-@@ -218,13 +218,13 @@
+@@ -217,13 +217,13 @@
/*==============*/
mutex_t* mutex, /*!< in: pointer to memory */
#ifdef UNIV_DEBUG
/******************************************************************//**
NOTE! Use the corresponding macro mutex_free(), not directly this function!
-@@ -292,13 +292,13 @@
+@@ -291,13 +291,13 @@
PSI_mutex_key key, /*!< in: Performance Schema key */
mutex_t* mutex, /*!< in: pointer to memory */
# ifdef UNIV_DEBUG
/******************************************************************//**
NOTE! Please use the corresponding macro mutex_enter(), not directly
this function!
-@@ -723,9 +723,9 @@
+@@ -728,9 +728,9 @@
ulint line; /*!< Line where the mutex was locked */
ulint level; /*!< Level in the global latching order */
#endif /* UNIV_SYNC_DEBUG */
os_thread_id_t thread_id; /*!< The thread id of the thread
which locked the mutex. */
ulint magic_n; /*!< MUTEX_MAGIC_N */
-@@ -740,9 +740,9 @@
+@@ -745,9 +745,9 @@
ulong count_os_yield; /*!< count of os_wait */
ulonglong lspent_time; /*!< mutex os_wait timer msec */
ulonglong lmax_spent_time;/*!< mutex os_wait timer msec */
#ifdef UNIV_PFS_MUTEX
struct PSI_mutex* pfs_psi; /*!< The performance schema
instrumentation hook */
-diff -ruN a/storage/innobase/include/sync0sync.ic b/storage/innobase/include/sync0sync.ic
---- a/storage/innobase/include/sync0sync.ic 2010-11-03 07:01:13.000000000 +0900
-+++ b/storage/innobase/include/sync0sync.ic 2010-12-03 17:35:12.984024599 +0900
-@@ -321,13 +321,13 @@
+--- a/storage/innobase/include/sync0sync.ic
++++ b/storage/innobase/include/sync0sync.ic
+@@ -320,13 +320,13 @@
mysql_pfs_key_t key, /*!< in: Performance Schema key */
mutex_t* mutex, /*!< in: pointer to memory */
# ifdef UNIV_DEBUG
{
mutex->pfs_psi = (PSI_server && PFS_IS_INSTRUMENTED(key))
? PSI_server->init_mutex(key, mutex)
-@@ -335,13 +335,13 @@
+@@ -334,13 +334,13 @@
mutex_create_func(mutex,
# ifdef UNIV_DEBUG
}
/******************************************************************//**
NOTE! Please use the corresponding macro mutex_free(), not directly
-diff -ruN a/storage/innobase/sync/sync0arr.c b/storage/innobase/sync/sync0arr.c
---- a/storage/innobase/sync/sync0arr.c 2010-12-03 15:09:51.304953409 +0900
-+++ b/storage/innobase/sync/sync0arr.c 2010-12-03 17:35:12.985024561 +0900
-@@ -488,12 +488,12 @@
+--- a/storage/innobase/sync/sync0arr.c
++++ b/storage/innobase/sync/sync0arr.c
+@@ -489,13 +489,12 @@
mutex = cell->old_wait_mutex;
fprintf(file,
"Last time reserved in file %s line %lu, "
#endif /* UNIV_SYNC_DEBUG */
"waiters flag %lu\n",
-- (void*) mutex, mutex->cfile_name, (ulong) mutex->cline,
+- (void*) mutex, innobase_basename(mutex->cfile_name),
+- (ulong) mutex->cline,
+ (void*) mutex, mutex->cmutex_name,
(ulong) mutex->lock_word,
#ifdef UNIV_SYNC_DEBUG
mutex->file_name, (ulong) mutex->line,
-@@ -511,9 +511,8 @@
+@@ -513,9 +512,8 @@
rwlock = cell->old_wait_rw_lock;
fprintf(file,
- " RW-latch at %p created in file %s line %lu\n",
-- (void*) rwlock, rwlock->cfile_name,
+- (void*) rwlock, innobase_basename(rwlock->cfile_name),
- (ulong) rwlock->cline);
+ " RW-latch at %p '%s'\n",
+ (void*) rwlock, rwlock->lock_name);
writer = rw_lock_get_writer(rwlock);
if (writer != RW_LOCK_NOT_LOCKED) {
fprintf(file,
-diff -ruN a/storage/innobase/sync/sync0rw.c b/storage/innobase/sync/sync0rw.c
---- a/storage/innobase/sync/sync0rw.c 2010-11-03 07:01:13.000000000 +0900
-+++ b/storage/innobase/sync/sync0rw.c 2010-12-03 17:35:12.987029059 +0900
-@@ -241,10 +241,10 @@
+--- a/storage/innobase/sync/sync0rw.c
++++ b/storage/innobase/sync/sync0rw.c
+@@ -242,10 +242,10 @@
# ifdef UNIV_SYNC_DEBUG
ulint level, /*!< in: level */
# endif /* UNIV_SYNC_DEBUG */
{
/* If this is the very first time a synchronization object is
created, then the following call initializes the sync system. */
-@@ -253,14 +253,15 @@
+@@ -254,14 +254,15 @@
mutex_create(rw_lock_mutex_key, rw_lock_get_mutex(lock),
SYNC_NO_ORDER_CHECK);
# endif
#endif /* INNODB_RW_LOCKS_USE_ATOMICS */
-@@ -280,8 +281,7 @@
+@@ -284,8 +285,7 @@
ut_d(lock->magic_n = RW_LOCK_MAGIC_N);
lock->count_os_wait = 0;
lock->last_s_file_name = "not yet reserved";
-@@ -401,10 +401,10 @@
+@@ -405,11 +405,10 @@
if (srv_print_latch_waits) {
fprintf(stderr,
"Thread %lu spin wait rw-s-lock at %p"
+ " '%s' rnds %lu\n",
(ulong) os_thread_pf(os_thread_get_curr_id()),
(void*) lock,
-- lock->cfile_name, (ulong) lock->cline, (ulong) i);
+- innobase_basename(lock->cfile_name),
+- (ulong) lock->cline, (ulong) i);
+ lock->lock_name, (ulong) i);
}
/* We try once again to obtain the lock */
-@@ -437,10 +437,9 @@
+@@ -442,11 +441,9 @@
if (srv_print_latch_waits) {
fprintf(stderr,
"Thread %lu OS wait rw-s-lock at %p"
- " cfile %s cline %lu\n",
+ " '%s'\n",
os_thread_pf(os_thread_get_curr_id()),
-- (void*) lock, lock->cfile_name,
+- (void*) lock,
+- innobase_basename(lock->cfile_name),
- (ulong) lock->cline);
+ (void*) lock, lock->lock_name);
}
/* these stats may not be accurate */
-@@ -659,9 +658,9 @@
+@@ -668,10 +665,9 @@
if (srv_print_latch_waits) {
fprintf(stderr,
"Thread %lu spin wait rw-x-lock at %p"
- " cfile %s cline %lu rnds %lu\n",
+ " '%s' rnds %lu\n",
os_thread_pf(os_thread_get_curr_id()), (void*) lock,
-- lock->cfile_name, (ulong) lock->cline, (ulong) i);
+- innobase_basename(lock->cfile_name),
+- (ulong) lock->cline, (ulong) i);
+ lock->lock_name, (ulong) i);
}
sync_array_reserve_cell(sync_primary_wait_array,
-@@ -682,9 +681,9 @@
+@@ -692,10 +688,9 @@
if (srv_print_latch_waits) {
fprintf(stderr,
"Thread %lu OS wait for rw-x-lock at %p"
- " cfile %s cline %lu\n",
+ " '%s'\n",
os_thread_pf(os_thread_get_curr_id()), (void*) lock,
-- lock->cfile_name, (ulong) lock->cline);
+- innobase_basename(lock->cfile_name),
+- (ulong) lock->cline);
+ lock->lock_name);
}
/* these stats may not be accurate */
-diff -ruN a/storage/innobase/sync/sync0sync.c b/storage/innobase/sync/sync0sync.c
---- a/storage/innobase/sync/sync0sync.c 2010-12-03 15:49:59.233955565 +0900
-+++ b/storage/innobase/sync/sync0sync.c 2010-12-03 17:35:12.989024400 +0900
-@@ -250,13 +250,13 @@
+--- a/storage/innobase/sync/sync0sync.c
++++ b/storage/innobase/sync/sync0sync.c
+@@ -270,13 +270,13 @@
/*==============*/
mutex_t* mutex, /*!< in: pointer to memory */
#ifdef UNIV_DEBUG
{
#if defined(HAVE_ATOMIC_BUILTINS)
mutex_reset_lock_word(mutex);
-@@ -274,11 +274,13 @@
+@@ -294,11 +294,13 @@
mutex->file_name = "not yet reserved";
mutex->level = level;
#endif /* UNIV_SYNC_DEBUG */
mutex->count_using= 0;
mutex->mutex_type= 0;
mutex->lspent_time= 0;
-@@ -532,9 +534,9 @@
+@@ -552,10 +554,9 @@
#ifdef UNIV_SRV_PRINT_LATCH_WAITS
fprintf(stderr,
"Thread %lu spin wait mutex at %p"
- " cfile %s cline %lu rnds %lu\n",
+ " '%s' rnds %lu\n",
(ulong) os_thread_pf(os_thread_get_curr_id()), (void*) mutex,
-- mutex->cfile_name, (ulong) mutex->cline, (ulong) i);
+- innobase_basename(mutex->cfile_name),
+- (ulong) mutex->cline, (ulong) i);
+ mutex->cmutex_name, (ulong) i);
#endif
mutex_spin_round_count += i;
-@@ -609,9 +611,9 @@
+@@ -630,10 +631,9 @@
#ifdef UNIV_SRV_PRINT_LATCH_WAITS
fprintf(stderr,
- "Thread %lu OS wait mutex at %p cfile %s cline %lu rnds %lu\n",
+ "Thread %lu OS wait mutex at %p '%s' rnds %lu\n",
(ulong) os_thread_pf(os_thread_get_curr_id()), (void*) mutex,
-- mutex->cfile_name, (ulong) mutex->cline, (ulong) i);
+- innobase_basename(mutex->cfile_name),
+- (ulong) mutex->cline, (ulong) i);
+ mutex->cmutex_name, (ulong) i);
#endif
mutex_os_wait_count++;
-@@ -913,9 +915,8 @@
+@@ -881,9 +881,8 @@
- if (mutex->magic_n == MUTEX_MAGIC_N) {
- fprintf(stderr,
-- "Mutex created at %s %lu\n",
-- mutex->cfile_name,
-- (ulong) mutex->cline);
-+ "Mutex '%s'\n",
-+ mutex->cmutex_name);
+ if (mutex->magic_n == MUTEX_MAGIC_N) {
+ fprintf(stderr,
+- "Mutex created at %s %lu\n",
+- innobase_basename(mutex->cfile_name),
+- (ulong) mutex->cline);
++ "Mutex '%s'\n",
++ mutex->cmutex_name);
- if (mutex_get_lock_word(mutex) != 0) {
- const char* file_name;
+ if (mutex_get_lock_word(mutex) != 0) {
+ ulint line;