1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-07 00:04:31 +03:00

MDEV-28567 Assertion `0' in open_tables upon function-related operation

DBUG_ASSERT(0) was added by MDEV-17554 (auto-create history
partitions) as an experimental measure. Testing has shown this
conditional branch of can_recover_from_failed_open() can be possible
due to MDL deadlock.

The fix replaces DBUG_ASSERT with more specific one for
!OT_ADD_HISTORY_PARTITION.

Test case was synchronized to reproduce deadlock always and commented
with execution path of MDL locking for Good (no deadlock) and Bad
(deadlock). The logging was done with the help of preceding patch for
debug MDL tracing.
This commit is contained in:
Aleksey Midenkov
2022-06-29 22:53:29 +03:00
parent 4a164364d7
commit f88511647a
4 changed files with 165 additions and 4 deletions

View File

@@ -561,6 +561,11 @@ public:
return m_timeout;
}
enum_open_table_action get_action() const
{
return m_action;
}
uint get_flags() const { return m_flags; }
/**