Bug #68397 log_bin_use_v1_row_events undocumented in 5.6
Submitted: 16 Feb 2013 3:13 Modified: 28 Feb 2013 11:39
Reporter: Andrew Garner Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Documentation Severity:S3 (Non-critical)
Version:5.6.10 OS:Any
Assigned to: Jon Stephens CPU Architecture:Any

[16 Feb 2013 3:13] Andrew Garner
Description:
log_bin_use_v1_row_events is required when a MySQL <= 5.5 slave is replicating row events from a MySQL 5.6 master.  This option is in the 5.5 and 5.1 manuals but seems to be missing from the MySQL 5.6 documentation both on the binary log options page:

http://dev.mysql.com/doc/refman/5.6/en/replication-options-binary-log.html

As well as lacking a mention on the upgrading from previous releases page:

http://dev.mysql.com/doc/refman/5.6/en/upgrading-from-previous-series.html

This still seems to be a valid option and enabling this on a 5.6 master can allow row events to be read by an older slave.

How to repeat:
Attempt to replicate  row events from a MySQL 5.6 master to an older release without setting log_bin_use_v1_row_events.

See an error along the lines of:

Error in Log_event::read_log_event(): 'Sanity check failed', data_len: 36, event_type: 30

Suggested fix:
This seems to bear at least a mention in 5.6 documentation.
[19 Feb 2013 18:46] Sveta Smirnova
Thank you for taking the time to write to us, but this is not a bug. Please double-check the documentation available at http://dev.mysql.com/doc/ and the instructions on
how to report a bug at http://bugs.mysql.com/how-to-report.php

This option is not supported in 5.6 server as well as in mainline 5.5 server. It is available only in Cluster packages.
[19 Feb 2013 19:12] Andrew Garner
This is very much a bug.  Mysql 5.5 cannot replicate rbr events from 5.6 unless this option is set.  This is using the standard 5.6.10 packages from dev.mysql.com.

5.6 writes rbr "v2" events unless this undocumented option is set.

There are plenty of options documented so that a 5.5 slave can replicate from q 5.6 master. This option here is certainly required for any environments that want a 5.5 slave and use binlog-format=row.

At the very least this option needs documented.
[19 Feb 2013 19:29] Sveta Smirnova
Thank you for the feedback.

I should mention that replication from newer version to older is not supported. It can work, but nobody guarantees this. So 5.5 slave should not replicate events from 5.6 master.

But you are correct regarding the option: it is still available in version 5.6. Bug is verified.
[28 Feb 2013 11:39] Jon Stephens
Thank you for your bug report. This issue has been addressed in the documentation. The updated documentation will appear on our website shortly, and will be included in the next release of the relevant products.
[28 Feb 2013 11:41] Jon Stephens
FYI: This variable was added to the mainline MySQL Server in the 5.6.6 release.

Noted this in the 5.6 Manual, along with the downgrade/backward compatibility issue and workaround.

Closed.