We have a flow where a user task is executed by the user which takes the flow to a service task. After this task is complete a mail notification is sent. The flow then moves to the next user task.
Initially this was all in sync and worked fine. The issue happened when we had a error thrown from the db layer after the first user task completed. This resulted in the transaction rolling back, but the mail notification was sent as the exception happened after the mail task was called. (persisting to the db using Spring/JPA).
I changed the mail task to be async="true" which resolves this issue. The question I had was regarding the mailtask. If the mailtask fails (say mail server is down or some other reason), would this process be stuck. Or after 3 retries will the process move to the next task (2nd user task?)