## What is the purpose of the change

When generating a `JobExecutionResult` from a `JobResult`, we fail the 
conversion if the application status was not `SUCCEEDED`.

In case of the CANCELED state, the client will throw an 
JobCancellationException.
In case of the FAILED state, the client will throw an JobExecutionException.

## Brief change log

- Add `ApplicationStatus` field to `JobResult`
- Throw `JobCancellationException` if `ApplicationStatus` was `CANCELED`
- Throw `JobExecutionException` if `ApplicationStatus` was `FAILED`

## Verifying this change

- Added `JobResultTest#testCancelledJobIsFailureResult`, 
`#testFailedJobIsFailureResult`, 
`#testCancelledJobThrowsJobCancellationException` and 
`#testFailedJobThrowsJobExecutionException`.

## Does this pull request potentially affect one of the following parts:

  - Dependencies (does it add or upgrade a dependency): (no)
  - The public API, i.e., is any changed class annotated with 
`@Public(Evolving)`: (no)
  - The serializers: (no)
  - The runtime per-record code paths (performance sensitive): (no)
  - Anything that affects deployment or recovery: JobManager (and its 
components), Checkpointing, Yarn/Mesos, ZooKeeper: (no)
  - The S3 file system connector: (no)

## Documentation

  - Does this pull request introduce a new feature? (no)
  - If yes, how is the feature documented? (not applicable)


[ Full content available at: https://github.com/apache/flink/pull/6742 ]
This message was relayed via gitbox.apache.org for [email protected]

Reply via email to