Hi, Nikita!

May be you don't need to truncate the transaction cache, but can log
SAVEPOINT and ROLLBACK TO SAVEPOINT as Query_log_event? That's easier.

Normal binlogging does it if the "transaction" modifies some
non-transactional tables. But you can just do it unconditionally.

Let's keep it as a lower-priority task, though, for after the rest is done.

On Nov 24, Nikita Malyavin wrote:
> On Mon, 15 Nov 2021 at 16:07, Sergei Golubchik wrote:
> 
> > Hi, Nikita!
> >
> > On Nov 15, Nikita Malyavin wrote:
> > > revision-id: 9277b838aad (mariadb-10.5.2-485-g9277b838aad)
> > > parent(s): 37b6f5cb8ef
> > > author: Nikita Malyavin
> > > committer: Nikita Malyavin
> > > timestamp: 2021-01-29 03:47:52 +1000
> > > message:
> > >
> > > Forbid savepoints setup while ONLINE ALTER goes on
> >
> > Why is that?
> 
> Well, in short, it's not implemented. If rollback to savepoint is
> happened, we should rollback in our transaction cache as well.
> 
> Then we need to remember where the savepoint is, for every online
> altering table. It likely resolves with maintaining a hash Savepoint
> -> List [ <table, offset> ]
> 
> But now rollback would sole an effect after ALTER TABLE is finished
> 
Regards,
Sergei
VP of MariaDB Server Engineering
and secur...@mariadb.org

_______________________________________________
Mailing list: https://launchpad.net/~maria-developers
Post to     : maria-developers@lists.launchpad.net
Unsubscribe : https://launchpad.net/~maria-developers
More help   : https://help.launchpad.net/ListHelp

Reply via email to