You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@tez.apache.org by "Bikas Saha (JIRA)" <ji...@apache.org> on 2015/04/24 19:26:38 UTC

[jira] [Assigned] (TEZ-2362) State Change Notifier Thread should be stopped when dag is completed

     [ https://issues.apache.org/jira/browse/TEZ-2362?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bikas Saha reassigned TEZ-2362:
-------------------------------

    Assignee: Bikas Saha

> State Change Notifier Thread should be stopped when dag is completed
> --------------------------------------------------------------------
>
>                 Key: TEZ-2362
>                 URL: https://issues.apache.org/jira/browse/TEZ-2362
>             Project: Apache Tez
>          Issue Type: Bug
>            Reporter: Jeff Zhang
>            Assignee: Bikas Saha
>
> For each dag, there's one thread of State Change Notifier. Should stop it when dag is completed. Otherwise it may exhaust the thread resources of AM and slow down AM for one sessions with lots of DAGs.  
> JStack trace for multiple threads of State Change Notifier
> {code}
> "State Change Notifier DAG: dag_1429844178238_0001_3" daemon prio=5 tid=0x00007fa525596800 nid=0x102503 waiting on condition [0x000000019e362000]
>    java.lang.Thread.State: WAITING (parking)
>     at sun.misc.Unsafe.park(Native Method)
>     - parking to wait for  <0x0000000706f2b3e8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
>     at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
>     at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
>     at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
>     at org.apache.tez.dag.app.dag.StateChangeNotifier$1.run(StateChangeNotifier.java:100)
>    Locked ownable synchronizers:
>     - None
> "State Change Notifier DAG: dag_1429844178238_0001_2" daemon prio=5 tid=0x00007fa529025000 nid=0x101f03 waiting on condition [0x000000019e059000]
>    java.lang.Thread.State: WAITING (parking)
>     at sun.misc.Unsafe.park(Native Method)
>     - parking to wait for  <0x0000000706f2f3e8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
>     at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
>     at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
>     at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
>     at org.apache.tez.dag.app.dag.StateChangeNotifier$1.run(StateChangeNotifier.java:100)
>    Locked ownable synchronizers:
>     - None
> "State Change Notifier DAG: dag_1429844178238_0001_1" daemon prio=5 tid=0x00007fa52539a800 nid=0xd1133 waiting on condition [0x00000001859d3000]
>    java.lang.Thread.State: WAITING (parking)
>     at sun.misc.Unsafe.park(Native Method)
>     - parking to wait for  <0x0000000706f2d500> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
>     at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
>     at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
>     at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
>     at org.apache.tez.dag.app.dag.StateChangeNotifier$1.run(StateChangeNotifier.java:100)
>    Locked ownable synchronizers:
>     - None
> "State Change Notifier DAG: dag_1429844178013_0001_1" daemon prio=5 tid=0x00007fa526396800 nid=0xd191b waiting on condition [0x0000000192a3d000]
>    java.lang.Thread.State: WAITING (parking)
>     at sun.misc.Unsafe.park(Native Method)
>     - parking to wait for  <0x0000000706f18c98> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
>     at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
>     at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
>     at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
>     at org.apache.tez.dag.app.dag.StateChangeNotifier$1.run(StateChangeNotifier.java:100)
>    Locked ownable synchronizers:
>     - None
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)