MySQL 8.0.39
Source Code Documentation
rpl_replica_commit_order_manager.cc File Reference
#include "sql/rpl_replica_commit_order_manager.h"
#include <array>
#include "debug_sync.h"
#include "my_compiler.h"
#include "my_dbug.h"
#include "my_sys.h"
#include "mysql/components/services/bits/psi_stage_bits.h"
#include "mysql/psi/mysql_cond.h"
#include "mysql/psi/mysql_mutex.h"
#include "mysqld_error.h"
#include "sql/binlog.h"
#include "sql/handler.h"
#include "sql/mdl.h"
#include "sql/mysqld.h"
#include "sql/raii/sentry.h"
#include "sql/rpl_rli_pdb.h"
#include "sql/sql_class.h"
#include "sql/sql_error.h"
#include "sql/sql_lex.h"

Functions

bool has_commit_order_manager (const THD *thd)
 Determines whether current thread shall run the procedure here to check whether it waits for its turn (and when its turn comes unregister from the commit order queue). More...
 

Function Documentation

◆ has_commit_order_manager()

bool has_commit_order_manager ( const THD thd)

Determines whether current thread shall run the procedure here to check whether it waits for its turn (and when its turn comes unregister from the commit order queue).

The sql commands ALTER TABLE, ANALYZE TABLE, DROP DB, DROP EVENT, DROP FUNCTION, DROP PROCEDURE, DROP TRIGGER, DROP TABLE, DROP VIEW, OPTIMIZE TABLE and REPAIR TABLE shall run this procedure here, as an exception, because these transactions have multiple intermediate commits. Therefore cannot predetermine when the last commit is done.

Parameters
[in]thdThe THD object of current thread.
Return values
falseCommit_order_manager object is not initialized
trueCommit_order_manager object is initialized