← Back to team overview

enterprise-support team mailing list archive

[Bug 1524948] [NEW] If client killed after ROLLBACK TO SAVEPOINT previous stmts committed

 

Public bug reported:

Description:
When you start transaction, then issue 

savepoint tx_0;
rollback to savepoint tx_0;

and then client is killed all data, changed before savepoint tx_0, is
committed.

But more strange thing: while this data is committed it is not
replicated to slave even if row-based format used.

Can be related to bug #79493

Bug is not repeatable with version 5.5

How to repeat:
create table test (value int) engine=innodb;
begin;
insert into test set value = 1;
savepoint tx_0;
rollback to savepoint tx_0;

Ctrl+z
bg

ps -ef | grep mysql

Find PID of mysql command-line client, kill it with `kill -9`

Now connect to master and run

mysql> select * from test;
+-------+
| value |
+-------+
|     1 |
+-------+
1 row in set (0.00 sec)

Then connect to slave and run:

mysql> select * from test;
Empty set (0.00 sec)

Replication is working fine.

Suggested fix:
Do not commit data, changed before SAVEPOINT statement.

** Affects: mysql-server
     Importance: Unknown
         Status: Unknown

** Affects: percona-server
     Importance: Undecided
         Status: Confirmed

** Affects: percona-server/5.6
     Importance: Undecided
         Status: Confirmed


** Tags: i63159

** Also affects: percona-server/5.6
   Importance: Undecided
       Status: Confirmed

** Bug watch added: MySQL Bug System #79596
   http://bugs.mysql.com/bug.php?id=79596

** Also affects: mysql-server via
   http://bugs.mysql.com/bug.php?id=79596
   Importance: Unknown
       Status: Unknown

-- 
You received this bug notification because you are a member of Ubuntu
Server/Client Support Team, which is subscribed to MySQL.
Matching subscriptions: Ubuntu Server/Client Support Team
https://bugs.launchpad.net/bugs/1524948

Title:
  If client killed after ROLLBACK TO SAVEPOINT previous stmts committed

To manage notifications about this bug go to:
https://bugs.launchpad.net/mysql-server/+bug/1524948/+subscriptions


Follow ups