sysown / proxysql

High-performance MySQL proxy with a GPL license.
http://www.proxysql.com
GNU General Public License v3.0
5.97k stars 973 forks source link

Enhancement: Support for Stored Procedures SIGNALS #957

Open dotmanila opened 7 years ago

dotmanila commented 7 years ago

Stored procedures may send signals instead of actual resultsets. When this happens, it can break connection and affect others if multiplexing is used.

2017-03-16 03:50:59 MySQL_Session.cpp:2236:handler(): [ERROR] Detected a broken connection during query on (0,192.168.56.83,3306) , FD (Conn:33 , MyDS:33) : 9000, TRANS_STATUS
ohsono commented 5 years ago

https://dev.mysql.com/doc/refman/8.0/en/c-api-multiple-queries.html

To support multiple-result processing, the C API includes the mysql_more_results() and mysql_next_result() functions. These functions are used at the end of a loop that iterates as long as more results are available. Failure to process the result this way may result in a dropped connection to the server.

This is a bug also mentioned on following: https://github.com/sysown/proxysql/issues/1903#issuecomment-466584793