Hello, everyone:

I need your help tracking down one rather rare and difficult to repeat bug in 
replication. I have had at least two users report a condition when the slave 
was 13 bytes off on its position in the master. One user was able to supply 
the appropriate binary log, which turned out to be perfectly normal.

The special signficance of 13 in addition to being unlucky number is that it 
is the header length of a binary log event. I have examined the code, thought 
of various possible scenarios, but still could find the bug that would cause 
this condition, even assuming some crazy things on the network. Perhaps I 
should have used a different header layout so it would have a luckier length 
- this problem has already been addressed in 4.0, although for reasons other 
than superstition :-)

So your help is desparately needed to provide more evidence and catch some 
patterns. If you ever experience bogus offset problem ( the symptom would be 
the slave losing connection, reconnecting, losing it again, and so on and so 
forth, being stuck at the same offset), I need you to do the following:

* upload the current binary log to ftp://support.mysql.com/pub/mysql/secret
* email me the part of your error log on the slave
* if you have been running the slave with --log-bin --log-slave-updates , 
also send the current binary log from the slave ( if you have not, enable 
those options and restart the slave)
* take a look at the timestamps in the slave error log and check your cron 
jobs, etc, to see if anything of interest was happening around the time the 
slave got confused.

A workaround for the problem is actually quite simple if you know where the 
slave is actually supposed to be - just do CHANGE MASTER TO 
MASTER_POS=correct_master_pos. The trick is knowing where it is supposed to 
be :-)

-- 
MySQL Development Team
For technical support contracts, visit https://order.mysql.com/
   __  ___     ___ ____  __ 
  /  |/  /_ __/ __/ __ \/ /   Sasha Pachev <[EMAIL PROTECTED]>
 / /|_/ / // /\ \/ /_/ / /__  MySQL AB, http://www.mysql.com/
/_/  /_/\_, /___/\___\_\___/  Provo, Utah, USA
       <___/                  

---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to