jakartaee / batch

The Jakarta Batch project produces the Batch Specification and API.
https://projects.eclipse.org/projects/ee4j.batch
Apache License 2.0
13 stars 18 forks source link

To clarify the behavior after skip-limit and retry-limit are exceeded #71

Open follis opened 4 years ago

follis commented 4 years ago

Originally opened as bug 6703 by cf126330

--------------Original Comment History---------------------------- Comment from = cf126330 on 2015-02-03 17:33:57 +0000

What will happen when skip-limit or retry-limit is exceeded? The most logical result seems to be FAILED step. The current spec doesn't explicitly state that, though.

Do you think we should add that when skip-limit or retry-limit are exceeded, the step should be marked failed with FAILED batch status?

For a somewhat similar attribute, start-limit, we do have this sentence:

If the limit is exceeded, the job is placed in the FAILED state. 

Spec group discussion thread: https://java.net/projects/jbatch/lists/public/archive/2015-02/message/0


Comment from = ScottKurz on 2015-02-03 18:24:05 +0000

I think it's closely-related enough that I'll mention I might like to revisit the first paragraph in 8.2.1.4 which now strikes me as mildly confusing.

Note that the java.net link above is bad, but we had it archived...pasting it here

From Scott Kurz 3 Feb 2105

Cheng,

Yes it should end in FAILED.

I suppose we could argue that Sec. 8.2.7 covers this indirectly.

Any unhandled exception thrown by any step-level artifact during step processing causes the step to terminate with a batch status of FAILED. In this context, "unhandled" means an exception thrown by the execution of the artifact back to the runtime implementation which does not result in a skip or a retry as described in section 8.2.1.4.

I.e. if we're at the limit we don't skip, so therefore we fall back to the typical exception handling behavior.

I'm on the fence... if you do want to open a spec bug though I would probably also revisit a bit the first paragraph in 8.2.1.4 which now strikes me as mildly confusing.

From Cheng Fang 31 Jan 2015

What will happen when skip-limit or retry-limit is exceeded? The most logical result seems to be FAILED step. The current spec doesn't explicitly state that, though.

Do you think we should add that when skip-limit or retry-limit are exceeded, the step should be marked failed with FAILED batch status?

For a somewhat similar attribute, start-limit, we do have this sentense:

  If the limit is exceeded, the job is placed in the FAILED state.