List:Commits« Previous MessageNext Message »
From:He Zhenxing Date:July 10 2009 12:50pm
Subject:Re: bzr commit into mysql-5.1-bugteam branch (alfranio.correia:2972)
Bug#28976
View as plain text  
Alfranio Correia wrote:
> He Zhenxing wrote:
> > Hi, Alfranio,
> >
> > I think the patch is OK, there are some minor comments in line.
> >
> > Alfranio Correia:
> >   
> >> #At
> file:///home/acorreia/workspace.sun/repository.mysql/bzrwork/bug-28976/mysql-5.1-bugteam/
> based on revid:martin.hansson@stripped
> >>
> >>  2972 Alfranio Correia	2009-07-09
> >>       BUG#28976 Mixing trans and non-trans tables in one transaction results
> in incorrect
> >>       binlog
> >>       
> >>       Mixing transactional and non-transactional tables on behalf of a
> transaction may
> >>       lead to inconsistencies among masters and slaves. The problem stems
> from the fact
> >>       that although modifications done to non-transactional tables on behalf
> of a 
> >>       transaction become immediately visible to the other connections it
> does not
> >>       immediately gets to the binary log and therefore consistency is
> broken.
> >>             
> >>       After the WL#2687, it will be safe to use either the MIXED or ROW mode
> to do such
> >>       mix. Changes to non-transactional tables will immediately get to the
> binary log
> >>       as rows. Under the STATEMENT mode, however, changing non-transactional
> tables
> >>       before transactional ones is the only possible safe mix. This happen
> because it
> >>       is as if such changes had not been executed on the behalf of a
> transaction.
> >>       On the other hand, other combinations may hide a causal dependency,
> thus making
> >>       impossible to immediately write statements with non-transactional
> tables to the
> >>       binary log.
> >>             
> >>       This patch guarantees that a mix under the STATEMENT mode is handled
> as follows:
> >>       
> >>       1) "B T T C" generates the "B T T C" entries in the binary log.
> >>       
> >>       2) "B T T R"  generates an "empty" entry in the binary log.
> >>       
> >>       2) "B T N C" generates the "B T N C" entries in the binary log.
> >>       
> >>       3) "B T N R" generates the "B T N R" entries in the binary log.
> >>       
> >>       4) "T" generates the "B T C" entries in the binary log.
> >>       
> >>       5) "T" with error generates an "empty" entry in the binary log.
> >>       
> >>       6) "N" generates the "N" entry in the binary log.
> >>       
> >>       7) "N" generates an empty entry if the error happens in the first
> tuple.
> >>       Otherwise, generates the "N" entry in the binary log.
> >>       
> >>       8) "M" generates the "B M C" entries in the binary log.
> >>       
> >>       10) "M" with error generates the "B M C" entries in the binary log.
> >>       
> >>       11) "B N N T C" generates the "N N B T C" entries in the binary log.
> >>       
> >>       12) "B N N T R" generates the "N N B T R" entries in the binary log.
> >>       
> >>       13) "B N N C" generates the "N N" entries in the binary log.
> >>       
> >>       14) "B N N R" generates the "N N" entries in the binary log.
> >>       
> >>       15) "B M T C" generates the "B M T C" entries in the binary log.
> >>       
> >>       16) "B M T R" generates the "B M T R" entries in the binary log.
> >>
> >>     
> >
> > I think the above is a bit too much for this bug, 
> I don't agree with this. It is better to have a good test case that
> addresses (or tries to) all possible combinations of statements.
> 

I do agree with you that it's good to do complete test and put these
information in the test file.

What I mean is that I personally think that it's not very necessary to
put all these in the commit message. But it's up to you :)

[snip]

Thread
bzr commit into mysql-5.1-bugteam branch (alfranio.correia:2972)Bug#28976Alfranio Correia9 Jul
  • Re: bzr commit into mysql-5.1-bugteam branch (alfranio.correia:2972)Bug#28976He Zhenxing10 Jul
    • Re: bzr commit into mysql-5.1-bugteam branch (alfranio.correia:2972)Bug#28976Alfranio Correia10 Jul
      • Re: bzr commit into mysql-5.1-bugteam branch (alfranio.correia:2972)Bug#28976He Zhenxing10 Jul
        • Re: bzr commit into mysql-5.1-bugteam branch (alfranio.correia:2972)Bug#28976Alfranio Correia10 Jul
Re: bzr commit into mysql-5.1-bugteam branch (alfranio.correia:2972)Bug#28976Andrei Elkin9 Jul
  • Re: bzr commit into mysql-5.1-bugteam branch (alfranio.correia:2972)Bug#28976Alfranio Correia10 Jul