REPLACE PROCEDURE executes as a DROP PROCEDURE request followed by a CREATE PROCEDURE request except for the handling of the privileges granted to the original procedure. The database retains all of the privileges that were granted directly on the original procedure.
If the specified procedure does not exist, REPLACE PROCEDURE has the same effect as performing a CREATE PROCEDURE statement.
If an error occurs during the replacement and the operation fails, the original procedure remains in place as it was prior to specifying the REPLACE PROCEDURE: the procedure is not dropped. This is analogous to rolling back the operation.