1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-08 11:22:35 +03:00

Merge branch '10.6' into '10.11'

This commit is contained in:
Julius Goryavsky
2025-04-02 05:50:52 +02:00
79 changed files with 1517 additions and 94 deletions

View File

@@ -1932,6 +1932,16 @@ binlog_flush_cache(THD *thd, binlog_cache_mngr *cache_mngr,
if (using_trx && thd->binlog_flush_pending_rows_event(TRUE, TRUE))
DBUG_RETURN(1);
#ifdef WITH_WSREP
/* Wsrep transaction was BF aborted but it must replay because certification
succeeded. The transaction must not be written into binlog yet, it will
be done during commit after the replay. */
if (WSREP(thd) && wsrep_must_replay(thd))
{
DBUG_RETURN(0);
}
#endif /* WITH_WSREP */
/*
Doing a commit or a rollback including non-transactional tables,
i.e., ending a transaction where we might write the transaction
@@ -7971,7 +7981,12 @@ MYSQL_BIN_LOG::write_transaction_to_binlog(THD *thd,
{
DBUG_RETURN(0);
}
else if (!(thd->variables.option_bits & OPTION_BIN_LOG))
if (!(thd->variables.option_bits & OPTION_BIN_LOG)
#ifdef WITH_WSREP
&& !WSREP(thd)
#endif
)
{
cache_mngr->need_unlog= false;
DBUG_RETURN(0);
@@ -8878,6 +8893,13 @@ MYSQL_BIN_LOG::write_transaction_or_stmt(group_commit_entry *entry,
bool has_xid= entry->end_event->get_type_code() == XID_EVENT;
DBUG_ENTER("MYSQL_BIN_LOG::write_transaction_or_stmt");
#ifdef WITH_WSREP
if (WSREP(entry->thd) &&
!(entry->thd->variables.option_bits & OPTION_BIN_LOG))
{
DBUG_RETURN(0);
}
#endif /* WITH_WSREP */
/*
An error in the trx_cache will truncate the cache to the last good