List:Commits« Previous MessageNext Message »
From:Andrei Elkin Date:March 10 2008 6:24pm
Subject:Re: bk commit into 5.0 tree (sven:1.2589) BUG#29288
View as plain text  
Sven, hej.

> Below is the list of changes that have just been committed into a local
> 5.0 repository of sven.  When sven does a push these changes
> will be propagated to the main repository and, within 24 hours after the
> push, to the public repository.
> For information on how to access the public repository
> see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html
>
> ChangeSet@stripped, 2008-02-28 14:11:14+01:00, sven@riska.(none) +12 -0
>   BUG#29288: myisam transactions replicated to a transactional slave leaves slave
> unstable

>   Problem: when replicating from myisam to transactional engine with
>   autocommit on, no BEGIN/COMMIT is written to the binlog. When the slave
>   replicates, it will start a transaction that never ends.

I think you agreed to change the problem description.
Despite we discussed that and I even offered my version: there was no
BEGIN as the tables are of myisam type. It must be autocommit bit that
had been set OFF of the query events that forced the slave to execute
a multi-statement transaction.
It sounds pretty strange to me now, when I wanted to check the failure
scenario, I can not hit this artifact.
Using some of your tests has not helped either.

A test that i made on my own.

master:

   create table t (a int) type=myisam

slave:

   alter table t (a int) type=innodb

master:

   set autcommint = OFF; 
   begin; 
     insert into t set a=1;
     insert into t set a=2; 
   commit; 

slave:

   select * from t; => 1,2

mysql> show variables like 'version';
+---------------+------------------+
| Variable_name | Value            |
+---------------+------------------+
| version       | 5.0.60-debug-log | 
+---------------+------------------+

I expected to see nothing as I thought `set autcommint = OFF' was
remembered in the events and while commit is not comming the innodb
transaction happening on slave won't complete won't commit.

A test that should mimic the test on the desciption page completed
(i checked only innodb type of tables on slave) w/o the issue. In the
end of the test:

           Slave_IO_Running: Yes
          Slave_SQL_Running: Yes

Attempt to select from the dropped tables fail as specified:

mysql> select * from t2;
ERROR 1146 (42S02): Table 'tester.t2' doesn't exist


I was puzzling over it for some time ... and remain puzzled.

Could please 1) check the reported problem, 2) check my simple test
above to be certain whether we have or not any issues related to this
bug.


cheers

Andrei

Thread
bk commit into 5.0 tree (sven:1.2589) BUG#29288Sven Sandberg28 Feb
  • Re: bk commit into 5.0 tree (sven:1.2589) BUG#29288Andrei Elkin6 Mar
    • Re: bk commit into 5.0 tree (sven:1.2589) BUG#29288Sven Sandberg6 Mar
  • Re: bk commit into 5.0 tree (sven:1.2589) BUG#29288Andrei Elkin10 Mar
    • Re: bk commit into 5.0 tree (sven:1.2589) BUG#29288Sven Sandberg11 Mar