Skip to content

Need a way to capture non-fatal errors and potentially make them fatal #3

@jfischer

Description

@jfischer

Borrowing from RxPython, ThingFlow provides an on_error() interface for input things and filters. If a non-fatal error occurs, the associated thing should catch the error, print it out, pass it downstream using _dispatch_error() and then close the downstream connections. See IterableAsOutputThing for an example.

The problem with this approach is that errors just end up on standard output and operation continues (assuming there still is something to run). Ideally, we'd want to have a standard error handler for non-fatal errors (that just prints it as default) and some way of making non-fatal errors fatal. This is challenging, since the "things" don't have any access to the scheduler's state (the natural place to put this error handler).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions