Bug #89326 Contribution by Facebook: mysqlbinlog large record fix
Submitted: 19 Jan 2018 21:37 Modified: 1 May 2018 9:59
Reporter: FBContrib Admin Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Replication Severity:S3 (Non-critical)
Version:8.0.3 OS:Any
Assigned to: CPU Architecture:Any

[19 Jan 2018 21:37] FBContrib Admin
Description:
Background innformation provided by Facebook:
Abstract:

Fixed mysqlbinlog error when reading big records from stdin. When mysqlbinlog tries to read a big 
record (over 128KB) from stdin, the glibc read in my_read will return 128KB instead of the full size. 
This causes _my_b_read to fail.

Repo: https://github.com/mysql/mysql-server
Patch on top of 8.0.3: https://github.com/mysql/mysql-server/commit/020025d9f277fd3283b8c75024f590857f58fbbd
Facebook commits: https://github.com/facebook/mysql-5.6/commit/db9f9dd

How to repeat:
See description

Suggested fix:
See contribution code attached
[19 Jan 2018 21:37] FBContrib Admin
mysqlbinlog large record fix 
(*) This code is contributed under the Facebook agreement

Contribution: fb_patch_19.txt (text/plain), 521.40 KiB.

[1 May 2018 9:59] Margaret Fisher
Posted by developer:
 
Changelog entry added for MySQL 8.0.12:
When mysqlbinlog was used to read a binary log event larger than 128KB, the read failed because 128KB was returned as the size, instead of the actual size. The issue has now been fixed. Thanks to the Facebook team for the patch.