Merge 10.4 into 10.5

This commit is contained in:
Marko Mäkelä 2021-05-03 14:34:48 +03:00
commit c6846757ac
23 changed files with 295 additions and 187 deletions

View file

@ -374,11 +374,14 @@ static inline int wsrep_before_rollback(THD* thd, bool all)
}
if (thd->wsrep_trx().is_streaming() &&
!wsrep_stmt_rollback_is_safe(thd))
(wsrep_fragments_certified_for_stmt(thd) > 0))
{
/* Non-safe statement rollback during SR multi statement
transasction. Self abort the transaction, the actual rollback
and error handling will be done in after statement phase. */
transaction. A statement rollback is considered unsafe, if
the same statement has already replicated one or more fragments.
Self abort the transaction, the actual rollback and error
handling will be done in after statement phase. */
WSREP_DEBUG("statement rollback is not safe for streaming replication");
wsrep_thd_self_abort(thd);
ret= 0;
}