Hi! On Wed, May 20, 2020 at 8:32 PM Sergei Golubchik <serg@mariadb.org> wrote:
Hi, Michael!
I see, you basically disable wsrep for these out-of-band transactions. I'm sure it works fine now, with Aria. But will it work with InnoDB?
On May 20, Michael Widenius wrote:
revision-id: 20d54b09830 (mariadb-10.5.2-257-g20d54b09830) parent(s): b22a28c2295 author: Michael Widenius <monty@mariadb.com> committer: Michael Widenius <monty@mariadb.com> timestamp: 2020-05-19 17:55:00 +0300 message:
Update galera to work with independent sub transactions
diff --git a/sql/sql_class.cc b/sql/sql_class.cc index 51d7380f622..4c87cbeee59 100644 --- a/sql/sql_class.cc +++ b/sql/sql_class.cc @@ -5806,6 +5806,8 @@ start_new_trans::start_new_trans(THD *thd) server_status= thd->server_status; m_transaction_psi= thd->m_transaction_psi; thd->m_transaction_psi= 0; + wsrep_on= thd->variables.wsrep_on; + thd->variables.wsrep_on= 0; thd->server_status&= ~(SERVER_STATUS_IN_TRANS | SERVER_STATUS_IN_TRANS_READONLY); thd->server_status|= SERVER_STATUS_AUTOCOMMIT;
Yes it will work with InnoDB. The reason is that except for statistical tables, all new transactions are read only and will thus not affect Galera. Statistical tables are also ok as they are not transactional and in any case they should not be sent to slaves. Regards, Monty