summaryrefslogtreecommitdiff
path: root/plugin/semisync/semisync_master.h
diff options
context:
space:
mode:
Diffstat (limited to 'plugin/semisync/semisync_master.h')
-rw-r--r--plugin/semisync/semisync_master.h14
1 files changed, 10 insertions, 4 deletions
diff --git a/plugin/semisync/semisync_master.h b/plugin/semisync/semisync_master.h
index bfb1cb74cd0..1a951fa0ba2 100644
--- a/plugin/semisync/semisync_master.h
+++ b/plugin/semisync/semisync_master.h
@@ -1,5 +1,6 @@
/* Copyright (C) 2007 Google Inc.
Copyright (C) 2008 MySQL AB
+ Copyright (C) 2009 Sun Microsystems, Inc
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -20,6 +21,11 @@
#include "semisync.h"
+#ifdef HAVE_PSI_INTERFACE
+extern PSI_mutex_key key_ss_mutex_LOCK_binlog_;
+extern PSI_cond_key key_ss_cond_COND_binlog_send_;
+#endif
+
/**
This class manages memory for active transaction list.
@@ -44,7 +50,7 @@ private:
TranxNode **trx_htb_; /* A hash table on active transactions. */
int num_entries_; /* maximum hash table entries */
- pthread_mutex_t *lock_; /* mutex lock */
+ mysql_mutex_t *lock_; /* mutex lock */
inline void assert_lock_owner();
@@ -69,7 +75,7 @@ private:
}
public:
- ActiveTranx(pthread_mutex_t *lock, unsigned long trace_level);
+ ActiveTranx(mysql_mutex_t *lock, unsigned long trace_level);
~ActiveTranx();
/* Insert an active transaction node with the specified position.
@@ -118,14 +124,14 @@ class ReplSemiSyncMaster
/* This cond variable is signaled when enough binlog has been sent to slave,
* so that a waiting trx can return the 'ok' to the client for a commit.
*/
- pthread_cond_t COND_binlog_send_;
+ mysql_cond_t COND_binlog_send_;
/* Mutex that protects the following state variables and the active
* transaction list.
* Under no cirumstances we can acquire mysql_bin_log.LOCK_log if we are
* already holding LOCK_binlog_ because it can cause deadlocks.
*/
- pthread_mutex_t LOCK_binlog_;
+ mysql_mutex_t LOCK_binlog_;
/* This is set to true when reply_file_name_ contains meaningful data. */
bool reply_file_name_inited_;