WL#5816: Use one interface to write statements to binary log
Affects: Server-Prototype Only
—
Status: On-Hold
This is a step towards making replication a library, such that the 5.6 rpl-
lib can be plugged into the 5.5 core [WL#5675].
Currently, the server writes statements to the binary log in two different ways
in different parts of the code:
- call binlog_query()
- create Query_log_event, call MYSQLBINLOG::write(Query_log_event), and
possibly
call issue_unsafe_warnings()
In this worklog, we replace all this by one single call to
Binlog::log_statement().
The following places need to be updated:
sp_head.cc:execute_function()
sp_head.cc:execute_procedure()
sql_base.cc:close_temporary_tables()
sql_db.cc (5 places)
sql_base.cc:close_temporary_tables()
We also remove the external declaration of MYSQLBINLOG if possible; i.e., if
core does not depend on any other members of MYSQLBINLOG.
Copyright (c) 2000, 2025, Oracle Corporation and/or its affiliates. All rights reserved.