MySQL 8.0.39
Source Code Documentation
|
Lock queue iterator. More...
#include <stddef.h>
#include "dict0mem.h"
#include "lock0iter.h"
#include "lock0lock.h"
#include "lock0priv.h"
#include "univ.i"
Macros | |
#define | LOCK_MODULE_IMPLEMENTATION |
Functions | |
void | lock_queue_iterator_reset (lock_queue_iterator_t *iter, const lock_t *lock, ulint bit_no) |
Initialize lock queue iterator so that it starts to iterate from "lock". More... | |
const lock_t * | lock_queue_iterator_get_prev (lock_queue_iterator_t *iter) |
Gets the previous lock in the lock queue, returns NULL if there are no more locks (i.e. More... | |
Lock queue iterator.
Can iterate over table and record lock queues.
Created July 16, 2007 Vasil Dimov
#define LOCK_MODULE_IMPLEMENTATION |
const lock_t * lock_queue_iterator_get_prev | ( | lock_queue_iterator_t * | iter | ) |
Gets the previous lock in the lock queue, returns NULL if there are no more locks (i.e.
the current lock is the first one). The iterator is receded (if not-NULL is returned).
iter | in/out: iterator |
void lock_queue_iterator_reset | ( | lock_queue_iterator_t * | iter, |
const lock_t * | lock, | ||
ulint | bit_no | ||
) |
Initialize lock queue iterator so that it starts to iterate from "lock".
bit_no specifies the record number within the heap where the record is stored. It can be undefined (ULINT_UNDEFINED) in two cases:
iter | out: iterator |
lock | in: lock to start from |
bit_no | in: record number in the heap |