← Back to team overview

maria-developers team mailing list archive

Re: 20d54b09830: Update galera to work with independent sub transactions

 

Hi!

On Wed, May 20, 2020 at 8:32 PM Sergei Golubchik <serg@xxxxxxxxxxx> 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@xxxxxxxxxxx>
> > committer: Michael Widenius <monty@xxxxxxxxxxx>
> > 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


References