reject transaction promise if commit fails (fixes #50)