Uploaded image for project: 'UIMA'
  1. UIMA
  2. UIMA-2358

UIMA AS should add a global UncaughtExceptionHandler

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • None
    • 2.4.0AS
    • Async Scaleout
    • None

    Description

      Currently UIMA AS process doesnt handle uncaught exceptions. Specifically, it should catch OOM Error and exit the process. When the OOM happens now, the jvm dumps an error (stack trace) and the UIMA AS process just hangs. Since JDK 1.5, java supports per thread as well a system wide (for all threads) custom UncaughtExceptionHandler. The application implements this interface and injects the handler to a specific thread via:

      Thread.currentThread().setUncaughtExceptionHandler(new MyExceptionHandler());

      Alternatively, one can set a global error handler via:

      Thread.setDefaultUncaughtExceptionHandler(new MyExceptionHandler());

      The latter is the approach that I will implement. When OOM Error happens (and perhaps for all errors), the UIMA AS process should exit. For all other exceptions (not caught in a executing thread), the custom exception handler will simply log the exception at WARNING level.

      Attachments

        Activity

          People

            cwiklik Jaroslaw Cwiklik
            cwiklik Jaroslaw Cwiklik
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: