I think we do not need it. It is an artifact we inherited. I try to throw it out of every portion of code I use.

There is a single point where this is useful, and that is to transfer exception information via RPC. For example when an exception occurs on the TaskManager, you will want to transfer the exception back to the JobManager to log it and report it to the client that submitted the program.