Details
-
Bug
-
Resolution: Done
-
Major
-
20.0.0.Beta2
-
None
Description
The AsyncFutureTask#get throws an java.util.concurrent.ExecutionException if the state is "FAILED", and uses the Object result as cause. If the cause is null, the caller of get, usually a different thread, will only see it's own stacktrace calling get, but not the one of the root cause.
To ensure AsyncFutureTask#setFailure is called correctly with an cause, all places should be checked for null. In case of a missing exception a placeholder (in the correct thread) shall be set.