[ https://issues.apache.org/jira/browse/OOZIE-2581?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Satish Subhashrao Saley updated OOZIE-2581: ------------------------------------------- Description: [~jlowe] found lot of lingering oozie launcher AMs which hung around 10 mins after successful completion and then jvm killed due to timeout. This happens when user code launches non-daemon threads, but mapreduce code does a System.exit() to avoid this from happening. Oozie does need the LauncherSecurityManager to capture exit codes when user applications do System.exit() . But it should reset it back to the originial security manager in the finally block so that AM code can proceed as expected in uber mode. {code} 2016-05-12 12:26:48,514 INFO [Thread-107] org.apache.hadoop.util.ExitUtil: Exiting with status 1 2016-05-12 12:26:48,514 ERROR [Thread-107] org.apache.hadoop.yarn.YarnUncaughtExceptionHandler: Thread Thread[Thread-107,5,main] threw an Exception. java.lang.SecurityException: Intercepted System.exit(1) at org.apache.oozie.action.hadoop.LauncherSecurityManager.checkExit(LauncherMapper.java:637) at java.lang.Runtime.exit(Runtime.java:107) at java.lang.System.exit(System.java:971) at org.apache.hadoop.util.ExitUtil.terminate(ExitUtil.java:133) at org.apache.hadoop.util.ExitUtil.terminate(ExitUtil.java:170) at org.apache.hadoop.mapreduce.v2.app.MRAppMaster.exitMRAppMaster(MRAppMaster.java:655) at org.apache.hadoop.mapreduce.v2.app.MRAppMaster.shutDownJob(MRAppMaster.java:636) at org.apache.hadoop.mapreduce.v2.app.MRAppMaster$JobFinishEventHandler$1.run(MRAppMaster.java:676) {code} was: [~jlowe] found lot of lingering oozie launcher AMs which hung around 10 mins after successful completion and then jvm killed due to timeout. This happens when user code launches non-daemon threads, but mapreduce code does a System.exit() to avoid this from happening. Oozie does need the LauncherSecurityManager to capture exit codes when user applications do System.exit() . But it should reset it back to the originial security manager in the finally block so that AM code can proceed as expected in uber mode. 2016-05-12 12:26:48,514 INFO [Thread-107] org.apache.hadoop.util.ExitUtil: Exiting with status 1 2016-05-12 12:26:48,514 ERROR [Thread-107] org.apache.hadoop.yarn.YarnUncaughtExceptionHandler: Thread Thread[Thread-107,5,main] threw an Exception. java.lang.SecurityException: Intercepted System.exit(1) at org.apache.oozie.action.hadoop.LauncherSecurityManager.checkExit(LauncherMapper.java:637) at java.lang.Runtime.exit(Runtime.java:107) at java.lang.System.exit(System.java:971) at org.apache.hadoop.util.ExitUtil.terminate(ExitUtil.java:133) at org.apache.hadoop.util.ExitUtil.terminate(ExitUtil.java:170) at org.apache.hadoop.mapreduce.v2.app.MRAppMaster.exitMRAppMaster(MRAppMaster.java:655) at org.apache.hadoop.mapreduce.v2.app.MRAppMaster.shutDownJob(MRAppMaster.java:636) at org.apache.hadoop.mapreduce.v2.app.MRAppMaster$JobFinishEventHandler$1.run(MRAppMaster.java:676) > Oozie should reset SecurityManager in finally block > --------------------------------------------------- > > Key: OOZIE-2581 > URL: https://issues.apache.org/jira/browse/OOZIE-2581 > Project: Oozie > Issue Type: Bug > Reporter: Satish Subhashrao Saley > Assignee: Satish Subhashrao Saley > > [~jlowe] found lot of lingering oozie launcher AMs which hung around 10 mins > after successful completion and then jvm killed due to timeout. This happens > when user code launches non-daemon threads, but mapreduce code does a > System.exit() to avoid this from happening. Oozie does need the > LauncherSecurityManager to capture exit codes when user applications do > System.exit() . But it should reset it back to the originial security manager > in the finally block so that AM code can proceed as expected in uber mode. > {code} > 2016-05-12 12:26:48,514 INFO [Thread-107] org.apache.hadoop.util.ExitUtil: > Exiting with status 1 > 2016-05-12 12:26:48,514 ERROR [Thread-107] > org.apache.hadoop.yarn.YarnUncaughtExceptionHandler: Thread > Thread[Thread-107,5,main] threw an Exception. > java.lang.SecurityException: Intercepted System.exit(1) > at > org.apache.oozie.action.hadoop.LauncherSecurityManager.checkExit(LauncherMapper.java:637) > at java.lang.Runtime.exit(Runtime.java:107) > at java.lang.System.exit(System.java:971) > at org.apache.hadoop.util.ExitUtil.terminate(ExitUtil.java:133) > at org.apache.hadoop.util.ExitUtil.terminate(ExitUtil.java:170) > at > org.apache.hadoop.mapreduce.v2.app.MRAppMaster.exitMRAppMaster(MRAppMaster.java:655) > at > org.apache.hadoop.mapreduce.v2.app.MRAppMaster.shutDownJob(MRAppMaster.java:636) > at > org.apache.hadoop.mapreduce.v2.app.MRAppMaster$JobFinishEventHandler$1.run(MRAppMaster.java:676) > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)