mirror of
https://github.com/MariaDB/server.git
synced 2026-01-06 05:22:24 +03:00
MDEV-4645: Incorrect reads of frozen binlog events; FDE corrupted in relay log
Currently several places use description_event->common_header_len instead of LOG_EVENT_MINIMAL_HEADER_LEN when parsing events with "frozen" headers (such as Start_event_v3 and its subclasses such as Format_description_log_event, as well as Rotate_event). This causes events with extra headers (which would otherwise be valid and those headers ignored) to be corrupted due to over-reading or skipping into the data portion of the log events. It is rewritten in some details patch of Jeremy Cole (See MDEV): - The virtual function returns length to avoid IFs (and only one call of the virtual function made) - Printing function avoids printing strings
This commit is contained in:
BIN
mysql-test/std_data/mdev-4645-binlog_checksum.binlog
Normal file
BIN
mysql-test/std_data/mdev-4645-binlog_checksum.binlog
Normal file
Binary file not shown.
BIN
mysql-test/std_data/mdev-4645-binlog_group_id.binlog
Normal file
BIN
mysql-test/std_data/mdev-4645-binlog_group_id.binlog
Normal file
Binary file not shown.
BIN
mysql-test/std_data/mdev-4645-binlog_group_id_checksum.binlog
Normal file
BIN
mysql-test/std_data/mdev-4645-binlog_group_id_checksum.binlog
Normal file
Binary file not shown.
BIN
mysql-test/std_data/mdev-4645-binlog_none.binlog
Normal file
BIN
mysql-test/std_data/mdev-4645-binlog_none.binlog
Normal file
Binary file not shown.
Reference in New Issue
Block a user