Bug #96177 Message output typo: missing a space on warning "was not purged because it was"
Submitted: 11 Jul 2019 21:02 Modified: 12 Jul 2019 6:09
Reporter: Carlos Tutte Email Updates:
Status: Verified Impact on me:
None 
Category:MySQL Server: Replication Severity:S3 (Non-critical)
Version:5.6, 5.7, 5.7.26 OS:Any
Assigned to: CPU Architecture:Any

[11 Jul 2019 21:02] Carlos Tutte
Description:
Typo in the output of:
"2019-07-11T18:00:17.795682Z 9 [Warning] file ./carlos-tutte-replication57-replication-1-bin.000011 was not purged because it was being readby thread number 2010 "

Notice there is a space missing between "read" and "by".
Checking the source code of latest 5.6 and 5.7 inside file sql/binlog.cc, it can be seen that as code was split in 2 lines, there is a space missing in between the words:

        sql_print_warning("file %s was not purged because it was being read"
                          "by thread number %u", m_log_name, thd->thread_id());

How to repeat:
The typo can be checked by inspecting the source code.

If you need to check how the warning is printed on the error.log, execute:

on slave:
stop slave;

on master:
-- generate big binlog files

Then on both servers execute very fast:
on slave:
start slave;

on master:
SET GLOBAL max_binlog_files=1; 
flush logs;
-- this will try to remove all binlogs except one. if slave is reading one, it won'be purged and the warning will be printed
[12 Jul 2019 6:09] MySQL Verification Team
Hello Carlos Tutte,

Thank you for the report.

regards,
Umesh