2 messages in com.mysql.lists.bugsRe: INNODB Rollback Does not work| From | Sent On | Attachments |
|---|---|---|
| Peter Zaitsev | 05 Jun 2001 02:18 | |
| Heikki Tuuri | 05 Jun 2001 08:45 |
| Subject: | Re: INNODB Rollback Does not work![]() |
|---|---|
| From: | Heikki Tuuri (Heik...@innobase.inet.fi) |
| Date: | 06/05/2001 08:45:11 AM |
| List: | com.mysql.lists.bugs |
Peter,
your test program contained LOCK TABLES ... and UNLOCK TABLES ... in the middle. The MySQL manual says that these commit the transaction. That was the reason all the work made in the test program was not rolled back, since part of it had been committed.
I removed the LOCK and UNLOCK from your program, and after that the rollback seemed to empty all the tables like it should do.
I agree that it is confusing that LOCK and UNLOCK commit the transaction. It derives from the fact that in MyISAM they are used like transaction begin and end: they isolate the work between them from the eyes of other users.
I will update the InnoDB manual about this. Also note that the following SQL statements commit the transaction:
ALTER TABLE BEGIN CREATE INDEX DROP DATABASE DROP TABLE RENAME TABLE TRUNCATE LOCK TABLES UNLOCK TABLES
Regards,
Heikki http://www.innodb.com
At 01:19 PM 6/5/01 +0400, you wrote:
Hello Heikki,
I've applied the fix which made innodb to core dump but now it seems like rollback (explicit or automatic) does not work. At least some of the changes are made.
I got a program which has a really long transaction - 15000 of replaces + 1000 inserts, many of which are multiple value ones. This represent statistics update for one chunk of log records.
I start this program on empty tables and then after rollback I have data in some of the tables - but it looks like not all the changes have been done, which looks even more strange. Other strange thing - it looks like the changes do not appear for other transactions until rollback is initiated.
InnoDB didn't reported any errors in mysql log file.
So I've uploaded badrollback.tar.gz to incoming directory (so Heikki will have required rights)
It has two files - first one create for layers_st90 database, while second set of queries started with begin and ended with rollback which produces the result described.
Hope you will be able to reproduce the BUG.
-- Best regards, Peter mailto:pz...@spylog.ru




