Bug #3017 wrong Relay_Log_Pos if Rotate is in the middle of a transaction in relay log
Submitted: 29 Feb 2004 15:37 Modified: 29 Feb 2004 15:48
Reporter: Guilhem Bichot Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Replication Severity:S3 (Non-critical)
Version:4.0 OS:Any (all)
Assigned to: Guilhem Bichot CPU Architecture:Any

[29 Feb 2004 15:37] Guilhem Bichot
Description:
See how-to-repeatR

How to repeat:
Run test rpl_trunc_binlog: result contains
  show slave status;
  Master_Host   Master_User     Master_Port     Connect_retry   Master_Log_File Read_Master_Log_Pos     Relay_Log_File        Relay_Log_Pos   Relay_Master_Log_File   Slave_IO_Running        Slave_SQL_Running       Replicate_do_db       Replicate_ignore_db     Last_errno      Last_error      Skip_counter    Exec_master_log_pos  Relay_log_space
! 127.0.0.1     root    MASTER_PORT     1       master-bin.002  4       slave-relay-bin.002     161     master-bin.001        Yes     No                      0       Rolling back unfinished transaction (no COMMIT or ROLLBACK) from relay log. Probably cause is that the master died while writing the transaction to it's binary log.0       79      #

Relay_log_pos==161 does not correspond to any position in the relay log. It should read "120", "160" or "201".

Suggested fix:
pushing a fix now...
[29 Feb 2004 15:48] Guilhem Bichot
Thank you for your bug report. This issue has been committed to our
source repository of that product and will be incorporated into the
next release.

If necessary, you can access the source repository and build the latest
available version, including the bugfix, yourself. More information 
about accessing the source trees is available at
    http://www.mysql.com/doc/en/Installing_source_tree.html

Additional info:

ChangeSet@1.1723, 2004-03-01 00:46:31+01:00, guilhem@mysql.com