Mysql erlaubt bis zu 255 Rekursionen in einem PROCEDURE, wenn Sie max_sp_recursion_depth.
setzenEs ist riskant, weil die Möglichkeit besteht, dass die erforderliche Rekursionstiefe irgendwann in der Zukunft 255 überschreitet.
Es ist also besser, Sie ersetzen Ihre Funktion durch eine Prozedur, indem Sie ein INOUT verwenden Variable für das return_result.