Clojure

Agent thread executors do not use the global uncaught exception handler

Details

  • Type: Enhancement Enhancement
  • Status: Open Open
  • Priority: Major Major
  • Resolution: Unresolved
  • Affects Version/s: Release 1.5
  • Fix Version/s: None
  • Component/s: None
  • Labels:

Description

If you use Thread.setDefaultUncaughtExceptionHandler to catch all application exceptions, and then throw an exception in a future, that exception will get swallowed up in deployment environments that don't watch stdout. It seems that the agent's executors ought to delegate to the global handler.

This issue bit us, in that we deploy and monitor our system only through its logs and metrics, and never actually saw that exceptions were being thrown in futures.

Activity

Alex Miller made changes -
Field Original Value New Value
Labels agents
Issue Type Defect [ 1 ] Enhancement [ 4 ]

People

Vote (0)
Watch (0)

Dates

  • Created:
    Updated: