1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-05 13:16:09 +03:00

Merge 10.7 into 10.8

This commit is contained in:
Marko Mäkelä
2022-11-01 08:50:28 +02:00
176 changed files with 5634 additions and 2587 deletions

View File

@@ -5111,12 +5111,22 @@ void reset_thd(MYSQL_THD thd)
before writing response to client, to provide durability
guarantees, in other words, server can't send OK packet
before modified data is durable in redo log.
*/
extern "C" void thd_increment_pending_ops(MYSQL_THD thd)
NOTE: system THD (those that are not associated with client
connection) do not allows async operations yet.
@param thd a THD
@return thd
@retval nullptr if this is system THD */
extern "C" MYSQL_THD thd_increment_pending_ops(MYSQL_THD thd)
{
if (!thd || thd->system_thread != NON_SYSTEM_THREAD)
return nullptr;
thd->async_state.inc_pending_ops();
return thd;
}
/**
This function can be used by plugin/engine to indicate
end of async operation (such as end of group commit
@@ -5127,6 +5137,8 @@ extern "C" void thd_increment_pending_ops(MYSQL_THD thd)
extern "C" void thd_decrement_pending_ops(MYSQL_THD thd)
{
DBUG_ASSERT(thd);
DBUG_ASSERT(thd->system_thread == NON_SYSTEM_THREAD);
thd_async_state::enum_async_state state;
if (thd->async_state.dec_pending_ops(&state) == 0)
{