summaryrefslogtreecommitdiff
path: root/innobase/include/sync0arr.h
diff options
context:
space:
mode:
Diffstat (limited to 'innobase/include/sync0arr.h')
-rw-r--r--innobase/include/sync0arr.h24
1 files changed, 17 insertions, 7 deletions
diff --git a/innobase/include/sync0arr.h b/innobase/include/sync0arr.h
index 75d79f4c93f..f0134894997 100644
--- a/innobase/include/sync0arr.h
+++ b/innobase/include/sync0arr.h
@@ -51,13 +51,9 @@ sync_array_reserve_cell(
sync_array_t* arr, /* in: wait array */
void* object, /* in: pointer to the object to wait for */
ulint type, /* in: lock request type */
- #ifdef UNIV_SYNC_DEBUG
- char* file, /* in: in debug version file where
- requested */
- ulint line, /* in: in the debug version line where
- requested */
- #endif
- ulint* index); /* out: index of the reserved cell */
+ char* file, /* in: file where requested */
+ ulint line, /* in: line where requested */
+ ulint* index); /* out: index of the reserved cell */
/**********************************************************************
This function should be called when a thread starts to wait on
a wait array cell. In the debug version this function checks
@@ -90,6 +86,20 @@ sync_array_signal_object(
/*=====================*/
sync_array_t* arr, /* in: wait array */
void* object);/* in: wait object */
+/**************************************************************************
+If the wakeup algorithm does not work perfectly at semaphore relases,
+this function will do the waking (see the comment in mutex_exit). This
+function should be called about every 1 second in the server. */
+
+void
+sync_arr_wake_threads_if_sema_free(void);
+/*====================================*/
+/**************************************************************************
+Prints warnings of long semaphore waits to stderr. Currently > 120 sec. */
+
+void
+sync_array_print_long_waits(void);
+/*=============================*/
/************************************************************************
Validates the integrity of the wait array. Checks
that the number of reserved cells equals the count variable. */