Uploaded image for project: 'Apache Tez'
  1. Apache Tez
  2. TEZ-2362

State Change Notifier Thread should be stopped when dag is completed

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 0.7.0
    • None
    • None

    Description

      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

      "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
      

      Attachments

        1. TEZ-2362.2.patch
          2 kB
          Bikas Saha
        2. TEZ-2362.1.patch
          0.9 kB
          Bikas Saha

        Activity

          People

            bikassaha Bikas Saha
            zjffdu Jeff Zhang
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: