callbacks will still be called in the event of an error
2.1.1