reef-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Douglas Service <dsop...@gmail.com>
Subject Re: [Discuss] How to deal with `ITask.Dispose()` / `Task.close()` exceptions
Date Tue, 18 Apr 2017 19:57:40 GMT
Are you differentiating between a coding error disposing of a resource and
an abnormal resource disposal failure?

>From an application programmers perspective using REEF, I would want to get
the result back if possible (maybe it is a long running task) and be
informed that something is going wrong disposing of resources after running
a task.

On Tue, Apr 18, 2017 at 12:49 PM, Markus Weimer <markus@weimo.de> wrote:

> > I remember the original thinking was if dispose throws exception,
> meaning the resource was not cleared most possibly, therefore we should
> crash the Evaluator.
>
> That makes sense and justifies the current implementation in REEF.NET.
> In that current implementation, we return a result and crash the
> Evaluator. Is that the desired behavior?
>
> > In fault tolerant scenarios, we need to know if an evaluator is still
> re-usable in recovery case.
>
> An alternative would be to consider this something the application
> Driver has to deal with. If we treated an exception from `.Dispose`
> and `.close` as a Task failure, the Driver would receive a
> `FailedTask`. The exception within would allow it to make a
> determination whether or not the Evaluator is still usable.
>
> Markus
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message