Bug #89788 sql_service_interface.cc: Incorrect error message parameters order
Submitted: 23 Feb 2018 11:59 Modified: 20 Jun 2018 11:30
Reporter: Nuno Carvalho Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Group Replication Severity:S3 (Non-critical)
Version:5.7.21 OS:Any
Assigned to: CPU Architecture:Any

[23 Feb 2018 11:59] Nuno Carvalho
Description:
Inside method Sql_service_interface::execute_internal(), error message parameters are passed in a incorrect order, it must be:
  string, string, integer
but we have
  string, integer, string

196       log_message(MY_ERROR_LEVEL, "Error running internal SQL query: %s. Got "
197                   "internal SQL error: %s(%d)", cmd.com_query.query,
198                   rset->sql_errno(), rset->err_msg().c_str());

How to repeat:
See the code.

Suggested fix:
196       log_message(MY_ERROR_LEVEL, "Error running internal SQL query: %s. Got "
197                   "internal SQL error: %s(%d)", cmd.com_query.query,
198                   rset->err_msg().c_str(), rset->sql_errno());
[20 Jun 2018 11:30] David Moss
Posted by developer:
 
Thank you for your feedback, this has been fixed in upcoming versions and the following was added to the 5.7.23 / 8.0.12 changelog:
The ER_GRP_RPL_SQL_SERVICE_FAILED_TO_RUN_SQL_QUERY error was being logged incorrectly.