Bueno investigue un poco mas y di con la solucion se trata de declarar un handler para los errores les dejo el codigo por si a alguien le sirve;
Código SQL:
Ver originalDELIMITER $$;
CREATE PROCEDURE `bd`.`proceed`()
BEGIN
DECLARE EXIT HANDLER
FOR SQLEXCEPTION, SQLWARNING, NOT FOUND
ROLLBACK TO PUNTO;
START TRANSACTION;
SAVEPOINT PUNTO;
INSERT INTO tabla1 (nombre) VALUES ("Pedro");
INSERT INTO tabla1 (nombre) VALUES ("Juan");
INSERT INTO tabla1 (nombre) VALUES (150); # En esta linea restorarara todo al inicio osea al SAVEPOINT PUNTO
END