[REEF-1492] Properly handle exception in ResultHandler.Dispose()

This change fixes several issues related to ResultHandler.Dispose():

* The sample implementation of ResultHandler uploads local file to remote
  in Dispose method, which is not a good behavior. In recovery scenarios,
  Dispose can be called in each retry with no result written to local file yet.
  Upload should only be done after the result is written to the local file.
* Dispose method should release resources only and not contain complex logic
  to reduce the chance of its failure.
* ResultHandler.Dispose() is called in FinallyBlock() method in TaskHost.
  It should be called in Task.Dispose to share exception handling logic
  with Task.Dispose().

JIRA:
  [REEF-1492](https://issues.apache.org/jira/browse/REEF-1492)

Pull request:
  This closes #1205
8 files changed
tree: b6f0005cf38de05cd71a330b8d34b8a12b73b6f3
  1. bin/
  2. dev/
  3. lang/
  4. website/
  5. .gitattributes
  6. .gitignore
  7. .travis.yml
  8. appveyor.yml
  9. Doxyfile
  10. HEADER
  11. LICENSE
  12. NOTICE
  13. pom.xml
  14. README.md
README.md

Apache REEF™

Apache REEF™ (Retainable Evaluator Execution Framework) is a library for developing portable applications for cluster resource managers such as Apache Hadoop YARN or Apache Mesos. For example, Microsoft Azure Stream Analytics is built on REEF and Hadoop.

Online Documentation

Detailed information on REEF can be found in the following places:

The developer mailing list is the best way to reach REEF‘s developers when the above aren’t sufficient.

Build Status

ComponentOSStatus
REEF JavaUbuntuBuild Status
REEF.NETWindowsBuild status

Building REEF

Java.NET
Build & run unit testsjava\BUILD.mdcs\BUILD.md

Releases

downloads NuGet package

License

Apache 2.0