update fail callback