Recovery after error

Whenever a error ocurs while processing a workflowinstance the workflowinstance is terminated. A user cannot restart the errornous task nore can the workflowtask be reset so it can be processed again.
Basiscally this breaks processing of business processflows and makes it very hard to recover from any error.

Therefore I would like to suggest some fallback and recovery mechanism inside the Workflow. If a task isn't executed correctly (error), the task is reset in the tasklist and in the WF-instance, so the task can be executed again after solving the error.