Во поедете со своим кодом только тогда, когда будет 100% гарантия, что rollback(); не вывалит исключения. И тогда - привет-привет, unlink_tmp_file();, никогда не вызовется.тебе шашечки или ехать?
Предвосхищая вопросы - роллбэк обвалится тогда, когда мы потеряли соединение с базой, к примеру.