1
1
/*****************************************************************************
3
Copyright (c) 1995, 2009, Innobase Oy. All Rights Reserved.
3
Copyright (c) 1995, 2010, Innobase Oy. All Rights Reserved.
4
4
Copyright (c) 2008, Google Inc.
6
6
Portions of this file contain modifications contributed and copyrighted by
238
239
sync_thread_levels_empty(void);
239
240
/*==========================*/
240
241
/******************************************************************//**
241
Checks that the level array for the current thread is empty.
242
@return TRUE if empty except the exceptions specified below */
245
sync_thread_levels_empty_gen(
246
/*=========================*/
242
Checks if the level array for the current thread contains a
243
mutex or rw-latch at the specified level.
244
@return a matching latch, or NULL if not found */
247
sync_thread_levels_contains(
248
/*========================*/
249
ulint level); /*!< in: latching order level
251
/******************************************************************//**
252
Checks if the level array for the current thread is empty.
253
@return a latch, or NULL if empty except the exceptions specified below */
256
sync_thread_levels_nonempty_gen(
257
/*============================*/
247
258
ibool dict_mutex_allowed); /*!< in: TRUE if dictionary mutex is
248
259
allowed to be owned by the thread,
249
260
also purge_is_running mutex is
262
#define sync_thread_levels_empty_gen(d) (!sync_thread_levels_nonempty_gen(d))
251
263
/******************************************************************//**
252
264
Gets the debug information for a reserved mutex. */