Skip to content

Disallow restart of finished job #576

Description

@soxofaan

(this is spin-off of existing discussions like #442 and #436)

As clarified by 8b63b58 (for #436), the openEO API allows to restart a finished job.

A job that reached status "finished" however produced (and consumed) quite some resources, valuable to the user:

  • job result assets + their metadata
  • job logs
  • processing costs (credits, ...)
  • ...

and is unclear what should happen with these when restarting a job:

  • discard existing (meta)data. And if so: when? on restart or when second attempt finished)?
  • merge/combine data and metadata in some way? Append (possibly duplicated) assets to result collection or try to be "smart" and skip duplicates?
  • what if second run failed? Should final status be "error", and should original results still be available?
  • same: what if second run was canceled? What should final status be: "canceled" or fallback to previous status "finished"?

I strongly believe that it is conceptually a bad idea to allow restarting a job that already reached status "finished" because it comes with a lot of additional non-trivial behavior to specify and implement.

Also note that the user does not seem to want to do this anyway:
in the geopyspark implementation and aggregator we (intentionally) ignore a start request on a finished job (just to avoid all the confusion this can cause) and I can't remember any user to question this.

Side-note: I feel the same about restart on a job in "error" or "canceled" state, but I kind of understand the appeal of the ability of restarting a failed or canceled job. However to avoid bike-shedding, I would keep that out of the discussion for now.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    Status
    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions