mirror of
https://github.com/MariaDB/server.git
synced 2025-08-05 13:16:09 +03:00
Removed wrong "Found lock of type # that is write and read locked" warnings.
This commit is contained in:
@@ -172,10 +172,13 @@ static int check_lock(struct st_lock_list *list, const char* lock_type,
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static void check_locks(THR_LOCK *lock, const char *where,
|
static void check_locks(THR_LOCK *lock, const char *where,
|
||||||
my_bool allow_no_locks)
|
my_bool allow_no_locks)
|
||||||
{
|
{
|
||||||
uint old_found_errors=found_errors;
|
uint old_found_errors=found_errors;
|
||||||
|
DBUG_ENTER("check_locks");
|
||||||
|
|
||||||
if (found_errors < MAX_FOUND_ERRORS)
|
if (found_errors < MAX_FOUND_ERRORS)
|
||||||
{
|
{
|
||||||
if (check_lock(&lock->write,"write",where,1,1) |
|
if (check_lock(&lock->write,"write",where,1,1) |
|
||||||
@@ -252,18 +255,21 @@ static void check_locks(THR_LOCK *lock, const char *where,
|
|||||||
}
|
}
|
||||||
if (lock->read.data)
|
if (lock->read.data)
|
||||||
{
|
{
|
||||||
if ((!pthread_equal(lock->write.data->thread,
|
if (!pthread_equal(lock->write.data->thread,
|
||||||
lock->read.data->thread) &&
|
lock->read.data->thread) &&
|
||||||
lock->write.data->type > TL_WRITE_DELAYED &&
|
((lock->write.data->type > TL_WRITE_DELAYED &&
|
||||||
lock->write.data->type != TL_WRITE_ONLY) ||
|
lock->write.data->type != TL_WRITE_ONLY) ||
|
||||||
((lock->write.data->type == TL_WRITE_CONCURRENT_INSERT ||
|
((lock->write.data->type == TL_WRITE_CONCURRENT_INSERT ||
|
||||||
lock->write.data->type == TL_WRITE_ALLOW_WRITE) &&
|
lock->write.data->type == TL_WRITE_ALLOW_WRITE) &&
|
||||||
lock->read_no_write_count))
|
lock->read_no_write_count)))
|
||||||
{
|
{
|
||||||
found_errors++;
|
found_errors++;
|
||||||
fprintf(stderr,
|
fprintf(stderr,
|
||||||
"Warning at '%s': Found lock of type %d that is write and read locked\n",
|
"Warning at '%s': Found lock of type %d that is write and read locked\n",
|
||||||
where, lock->write.data->type);
|
where, lock->write.data->type);
|
||||||
|
DBUG_PRINT("warning",("At '%s': Found lock of type %d that is write and read locked\n",
|
||||||
|
where, lock->write.data->type));
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (lock->read_wait.data)
|
if (lock->read_wait.data)
|
||||||
@@ -286,6 +292,7 @@ static void check_locks(THR_LOCK *lock, const char *where,
|
|||||||
DBUG_PRINT("error",("Found wrong lock"));
|
DBUG_PRINT("error",("Found wrong lock"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
DBUG_VOID_RETURN;
|
||||||
}
|
}
|
||||||
|
|
||||||
#else /* EXTRA_DEBUG */
|
#else /* EXTRA_DEBUG */
|
||||||
|
Reference in New Issue
Block a user