2017-05-13 3 views
0

NFS 커넥터로 spark 1.6을 테스트하려고하는데 spark-submit을 사용하여 작업을 제출하면 작업이 성공적으로 완료되고 콘솔에서도 결과가 인쇄됩니다. 웹 UI에도 완료되었다고합니다. 그러나 스파크 제출은 종료되지 않습니다.대기 상태에서 Java Thread를 디버그하는 방법

Took jstack output and noticed few threads are waiting. Is there a way 
to figure the reason the hang from the running process? 



"Finalizer" #3 daemon prio=8 os_prio=0 tid=0x00007f59000c5000 nid=0x1c80 in Object.wait() [0x00007f5864e37000] 
    java.lang.Thread.State: WAITING (on object monitor) 
     at java.lang.Object.wait(Native Method) 
     - waiting on <0x00000000e00152f0> (a java.lang.ref.ReferenceQueue$Lock) 
     at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143) 
     - locked <0x00000000e00152f0> (a java.lang.ref.ReferenceQueue$Lock) 
     at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164) 
     at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209) 

"Reference Handler" #2 daemon prio=10 os_prio=0 tid=0x00007f59000c0800 nid=0x1c7f in Object.wait() [0x00007f5864f38000] 
    java.lang.Thread.State: WAITING (on object monitor) 
     at java.lang.Object.wait(Native Method) 
     - waiting on <0x00000000e002d238> (a java.lang.ref.Reference$Lock) 
     at java.lang.Object.wait(Object.java:502) 
     at java.lang.ref.Reference.tryHandlePending(Reference.java:191) 
     - locked <0x00000000e002d238> (a java.lang.ref.Reference$Lock) 
     at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:153) 

"org.apache.hadoop.fs.FileSystem$Statistics$StatisticsDataReferenceCleaner" #114 daemon prio=5 os_prio=0 tid=0x00007f590181e800 nid=0x1cf0 in Object.wait() [0x00007f57364eb000] 
    java.lang.Thread.State: WAITING (on object monitor) 
     at java.lang.Object.wait(Native Method) 
     - waiting on <0x00000000e05be660> (a java.lang.ref.ReferenceQueue$Lock) 
     at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143) 
     - locked <0x00000000e05be660> (a java.lang.ref.ReferenceQueue$Lock) 
     at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164) 
     at org.apache.hadoop.fs.FileSystem$Statistics$StatisticsDataReferenceCleaner.run(FileSystem.java:3188) 
     at java.lang.Thread.run(Thread.java:745) 



"New I/O worker #35" #159 prio=5 os_prio=0 tid=0x00007f59026f7800 nid=0x1d24 runnable [0x00007f57348ba000] 
    java.lang.Thread.State: RUNNABLE 
     at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method) 
     at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269) 
     at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:93) 
     at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86) 
     - locked <0x00000000e89b22c8> (a sun.nio.ch.Util$3) 
     - locked <0x00000000e89b22b8> (a java.util.Collections$UnmodifiableSet) 
     - locked <0x00000000e89b22d8> (a sun.nio.ch.EPollSelectorImpl) 
     at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97) 
     at org.jboss.netty.channel.socket.nio.SelectorUtil.select(SelectorUtil.java:68) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.select(AbstractNioSelector.java:415) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:212) 
     at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:89) 
     at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178) 
     at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) 
     at org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42) 
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
     at java.lang.Thread.run(Thread.java:745) 

"New I/O worker #34" #158 prio=5 os_prio=0 tid=0x00007f59015aa000 nid=0x1d23 runnable [0x00007f57345b7000] 
    java.lang.Thread.State: RUNNABLE 
     at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method) 
     at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269) 
     at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:93) 
     at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86) 
     - locked <0x00000000e89b42c8> (a sun.nio.ch.Util$3) 
     - locked <0x00000000e89b42b8> (a java.util.Collections$UnmodifiableSet) 
     - locked <0x00000000e89b42d8> (a sun.nio.ch.EPollSelectorImpl) 
     at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97) 
     at org.jboss.netty.channel.socket.nio.SelectorUtil.select(SelectorUtil.java:68) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.select(AbstractNioSelector.java:415) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:212) 
     at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:89) 
     at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178) 
     at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) 
     at org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42) 
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
     at java.lang.Thread.run(Thread.java:745) 

"New I/O worker #33" #157 prio=5 os_prio=0 tid=0x00007f590183c000 nid=0x1d22 runnable [0x00007f57349bb000] 
    java.lang.Thread.State: RUNNABLE 
     at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method) 
     at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269) 
     at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:93) 
     at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86) 
     - locked <0x00000000e89b62c8> (a sun.nio.ch.Util$3) 
     - locked <0x00000000e89b62b8> (a java.util.Collections$UnmodifiableSet) 
     - locked <0x00000000e89b62d8> (a sun.nio.ch.EPollSelectorImpl) 
     at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97) 
     at org.jboss.netty.channel.socket.nio.SelectorUtil.select(SelectorUtil.java:68) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.select(AbstractNioSelector.java:415) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:212) 
     at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:89) 
     at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178) 
     at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) 
     at org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42) 
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
     at java.lang.Thread.run(Thread.java:745) 

"New I/O worker #32" #156 prio=5 os_prio=0 tid=0x00007f590183b000 nid=0x1d21 runnable [0x00007f57346b8000] 
    java.lang.Thread.State: RUNNABLE 
     at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method) 
     at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269) 
     at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:93) 
     at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86) 
     - locked <0x00000000e899bfa0> (a sun.nio.ch.Util$3) 
     - locked <0x00000000e899bf90> (a java.util.Collections$UnmodifiableSet) 
     - locked <0x00000000e899bfb0> (a sun.nio.ch.EPollSelectorImpl) 
     at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97) 
     at org.jboss.netty.channel.socket.nio.SelectorUtil.select(SelectorUtil.java:68) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.select(AbstractNioSelector.java:415) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:212) 
     at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:89) 
     at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178) 
     at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) 
     at org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42) 
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
     at java.lang.Thread.run(Thread.java:745) 

"New I/O worker #31" #155 prio=5 os_prio=0 tid=0x00007f590183a000 nid=0x1d20 runnable [0x00007f5734abc000] 
    java.lang.Thread.State: RUNNABLE 
     at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method) 
     at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269) 
     at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:93) 
     at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86) 
     - locked <0x00000000e89ba2c8> (a sun.nio.ch.Util$3) 
     - locked <0x00000000e89ba2b8> (a java.util.Collections$UnmodifiableSet) 
     - locked <0x00000000e89ba2d8> (a sun.nio.ch.EPollSelectorImpl) 
     at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97) 
     at org.jboss.netty.channel.socket.nio.SelectorUtil.select(SelectorUtil.java:68) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.select(AbstractNioSelector.java:415) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:212) 
     at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:89) 
     at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178) 
     at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) 
     at org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42) 
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
     at java.lang.Thread.run(Thread.java:745) 

"New I/O worker #30" #154 prio=5 os_prio=0 tid=0x00007f5901839800 nid=0x1d1f runnable [0x00007f57344b6000] 
    java.lang.Thread.State: RUNNABLE 
     at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method) 
     at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269) 
     at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:93) 
     at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86) 
     - locked <0x00000000e89be2c8> (a sun.nio.ch.Util$3) 
     - locked <0x00000000e89be2b8> (a java.util.Collections$UnmodifiableSet) 
     - locked <0x00000000e89be2d8> (a sun.nio.ch.EPollSelectorImpl) 
     at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97) 
     at org.jboss.netty.channel.socket.nio.SelectorUtil.select(SelectorUtil.java:68) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.select(AbstractNioSelector.java:415) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:212) 
     at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:89) 
     at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178) 
     at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) 
     at org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42) 
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
     at java.lang.Thread.run(Thread.java:745) 

"New I/O worker #29" #153 prio=5 os_prio=0 tid=0x00007f590183e000 nid=0x1d1e runnable [0x00007f57347b9000] 
    java.lang.Thread.State: RUNNABLE 
     at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method) 
     at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269) 
     at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:93) 
     at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86) 
     - locked <0x00000000e89c02c8> (a sun.nio.ch.Util$3) 
     - locked <0x00000000e89c02b8> (a java.util.Collections$UnmodifiableSet) 
     - locked <0x00000000e89c02d8> (a sun.nio.ch.EPollSelectorImpl) 
     at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97) 
     at org.jboss.netty.channel.socket.nio.SelectorUtil.select(SelectorUtil.java:68) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.select(AbstractNioSelector.java:415) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:212) 
     at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:89) 
     at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178) 
     at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) 
     at org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42) 
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
     at java.lang.Thread.run(Thread.java:745) 

"New I/O worker #28" #152 prio=5 os_prio=0 tid=0x00007f590183d000 nid=0x1d1d runnable [0x00007f57343b5000] 
    java.lang.Thread.State: RUNNABLE 
     at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method) 
     at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269) 
     at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:93) 
     at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86) 
     - locked <0x00000000e89a02e8> (a sun.nio.ch.Util$3) 
     - locked <0x00000000e89a02d8> (a java.util.Collections$UnmodifiableSet) 
     - locked <0x00000000e89a02f8> (a sun.nio.ch.EPollSelectorImpl) 
     at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97) 
     at org.jboss.netty.channel.socket.nio.SelectorUtil.select(SelectorUtil.java:68) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.select(AbstractNioSelector.java:415) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:212) 
     at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:89) 
     at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178) 
     at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) 
     at org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42) 
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
     at java.lang.Thread.run(Thread.java:745) 

"Hashed wheel timer #1" #117 prio=5 os_prio=0 tid=0x00007f59025d9000 nid=0x1d01 waiting on condition [0x00007f5734cbe000] 
    java.lang.Thread.State: TIMED_WAITING (sleeping) 
     at java.lang.Thread.sleep(Native Method) 
     at org.jboss.netty.util.HashedWheelTimer$Worker.waitForNextTick(HashedWheelTimer.java:483) 
     at org.jboss.netty.util.HashedWheelTimer$Worker.run(HashedWheelTimer.java:392) 
     at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) 
     at java.lang.Thread.run(Thread.java:745) 

"New I/O worker #8" #125 prio=5 os_prio=0 tid=0x00007f5902468000 nid=0x1cff runnable [0x00007f57350c0000] 
    java.lang.Thread.State: RUNNABLE 
     at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method) 
     at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269) 
     at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:93) 
     at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86) 
     - locked <0x00000000e5524748> (a sun.nio.ch.Util$3) 
     - locked <0x00000000e5524738> (a java.util.Collections$UnmodifiableSet) 
     - locked <0x00000000e5524620> (a sun.nio.ch.EPollSelectorImpl) 
     at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97) 
     at org.jboss.netty.channel.socket.nio.SelectorUtil.select(SelectorUtil.java:68) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.select(AbstractNioSelector.java:415) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:212) 
     at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:89) 
     at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178) 
     at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) 
     at org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42) 
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
     at java.lang.Thread.run(Thread.java:745) 

"New I/O worker #7" #124 prio=5 os_prio=0 tid=0x00007f5902466000 nid=0x1cfe runnable [0x00007f57351c1000] 
    java.lang.Thread.State: RUNNABLE 
     at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method) 
     at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269) 
     at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:93) 
     at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86) 
     - locked <0x00000000e571d718> (a sun.nio.ch.Util$3) 
     - locked <0x00000000e571d728> (a java.util.Collections$UnmodifiableSet) 
     - locked <0x00000000e571d6d0> (a sun.nio.ch.EPollSelectorImpl) 
     at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97) 
     at org.jboss.netty.channel.socket.nio.SelectorUtil.select(SelectorUtil.java:68) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.select(AbstractNioSelector.java:415) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:212) 
     at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:89) 
     at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178) 
     at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) 
     at org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42) 
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
     at java.lang.Thread.run(Thread.java:745) 

"New I/O worker #6" #123 prio=5 os_prio=0 tid=0x00007f5902464800 nid=0x1cfd runnable [0x00007f57352c2000] 
    java.lang.Thread.State: RUNNABLE 
     at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method) 
     at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269) 
     at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:93) 
     at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86) 
     - locked <0x00000000e575b608> (a sun.nio.ch.Util$3) 
     - locked <0x00000000e575b618> (a java.util.Collections$UnmodifiableSet) 
     - locked <0x00000000e575b5c0> (a sun.nio.ch.EPollSelectorImpl) 
     at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97) 
     at org.jboss.netty.channel.socket.nio.SelectorUtil.select(SelectorUtil.java:68) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.select(AbstractNioSelector.java:415) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:212) 
     at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:89) 
     at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178) 
     at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) 
     at org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42) 
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
     at java.lang.Thread.run(Thread.java:745) 

"New I/O worker #5" #122 prio=5 os_prio=0 tid=0x00007f5902462800 nid=0x1cfc runnable [0x00007f57353c3000] 
    java.lang.Thread.State: RUNNABLE 
     at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method) 
     at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269) 
     at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:93) 
     at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86) 
     - locked <0x00000000e5525588> (a sun.nio.ch.Util$3) 
     - locked <0x00000000e5525578> (a java.util.Collections$UnmodifiableSet) 
     - locked <0x00000000e5525460> (a sun.nio.ch.EPollSelectorImpl) 
     at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97) 
     at org.jboss.netty.channel.socket.nio.SelectorUtil.select(SelectorUtil.java:68) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.select(AbstractNioSelector.java:415) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:212) 
     at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:89) 
     at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178) 
     at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) 
     at org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42) 
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
     at java.lang.Thread.run(Thread.java:745) 

"New I/O worker #4" #121 prio=5 os_prio=0 tid=0x00007f5902461000 nid=0x1cfb runnable [0x00007f57354c4000] 
    java.lang.Thread.State: RUNNABLE 
     at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method) 
     at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269) 
     at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:93) 
     at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86) 
     - locked <0x00000000e5525ca8> (a sun.nio.ch.Util$3) 
     - locked <0x00000000e5525c98> (a java.util.Collections$UnmodifiableSet) 
     - locked <0x00000000e5525b80> (a sun.nio.ch.EPollSelectorImpl) 
     at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97) 
     at org.jboss.netty.channel.socket.nio.SelectorUtil.select(SelectorUtil.java:68) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.select(AbstractNioSelector.java:415) 
     at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:212) 
     at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:89) 
     at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178) 
     at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) 
     at org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42) 
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
     at java.lang.Thread.run(Thread.java:745) 

답변

0

"stuck"스레드는 전혀 문제가없는 것처럼 보입니다. 3 개 모두 가비지 컬렉터가 도달 할 수없는 것으로 판명 한 객체에 대해 파이널 라이즈 (또는 유사한 처리)를 수행하는 참조 핸들러입니다.

참조 처리기 스레드의 정상 상태는 개체가 전달 될 때까지 기다리지 못하도록 차단됩니다. 이렇게

또한 스택 덤프는 각 스레드가 데몬 스레드임을 나타냅니다. 즉, 정상적인 방법으로 JVM이 종료되는 것을 막지는 못합니다.

이러한 스레드는 spark-submit과 관련된 문제의 원인이되지 않습니다.


문제가 스파크 제출 함께 할 수 있습니까?

그 3 개 스레드가 문제의 원인을 경우 당신이 요구하는 경우 거의 확실 호 (IMO)가

당신이 실제 문제가 무엇인지 묻는 경우 : 몰라요. 1) 제시 한 증거 중 어느 것도 단서를주지 못하고 2)이 증후군을 인식하기 위해 Hadoop에 대한 지식/경험이 없습니다.

tcp 연결이 유휴 상태 인 경우 데몬 스레드를 닫으면이 중단에 도움이됩니까?

일반적으로 스레드를 "닫을"수 없습니다. Thread.interrupt 또는`Thread.destroy '에 호출 할 수있다. 인터럽트가 무시 될 수 있습니다. destroy 메소드는 위험하므로이므로 더 이상 사용되지 않을 수 있으며 제출 프로그램이 더 나쁜 상태가 될 수 있습니다.

이러한 3 개의 스레드의 경우에는 인터럽트하거나 파괴하지 마십시오. 내가 말했듯이, 그들은 문제를 일으키는 것이 아닙니다.

+0

빠른 답변을 보내 주신 Stephen에게 감사드립니다. 문제는 스파크 제출 일 수 있습니까? tcp 연결이 유휴 상태 인 경우, 데몬 스레드를 닫으면이 중단에 도움이됩니까? – user3835070

0

spark-submit은 완료를 기다리지 않고 종료중인 응용 프로그램에 대해 "spark.yarn.submit.waitAppCompletion = false"옵션을 제공합니다. 이 옵션은 나를 위해 일했습니다.

spark.yarn.submit.waitAppCompletion - YARN 클러스터 모드에서 클라이언트가 응용 프로그램이 완료 될 때까지 종료할지 여부를 제어합니다. true로 설정하면 클라이언트 프로세스는 응용 프로그램의 상태를보고합니다. 그렇지 않으면 제출 후 클라이언트 프로세스가 종료됩니다.

관련 문제