You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Thejas M Nair (JIRA)" <ji...@apache.org> on 2016/02/19 08:07:18 UTC

[jira] [Commented] (HIVE-13093) hive metastore does not exit on start failure

    [ https://issues.apache.org/jira/browse/HIVE-13093?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15153828#comment-15153828 ] 

Thejas M Nair commented on HIVE-13093:
--------------------------------------

The jstack of such a metastore is like this. Note the thread with HiveMetaStore.java in stack trace -

{code}

"Attach Listener" #18 daemon prio=9 os_prio=0 tid=0x00007fa749d4f000 nid=0x7e7a runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"DestroyJavaVM" #17 prio=5 os_prio=0 tid=0x00007fa74801b000 nid=0x7c1c waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"org.apache.hadoop.hive.common.JvmPauseMonitor$Monitor@77c43175" #16 daemon prio=5 os_prio=0 tid=0x00007fa73400e000 nid=0x7c3f waiting on condition [0x00007fa732d7b000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
        at java.lang.Thread.sleep(Native Method)
        at org.apache.hadoop.hive.common.JvmPauseMonitor$Monitor.run(JvmPauseMonitor.java:180)
        at java.lang.Thread.run(Thread.java:745)

"Thread-5" #15 prio=5 os_prio=0 tid=0x00007fa749e9d800 nid=0x7c3e waiting on condition [0x00007fa73328f000]
   java.lang.Thread.State: WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x00000000de718150> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
        at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
        at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
        at org.apache.hadoop.hive.metastore.HiveMetaStore$5.run(HiveMetaStore.java:6155)

"AsyncLogger-1" #9 daemon prio=5 os_prio=0 tid=0x00007fa749c77000 nid=0x7c27 waiting on condition [0x00007fa7335ee000]
   java.lang.Thread.State: WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x00000000de7896e8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
        at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
        at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
        at com.lmax.disruptor.BlockingWaitStrategy.waitFor(BlockingWaitStrategy.java:45)
        at com.lmax.disruptor.ProcessingSequenceBarrier.waitFor(ProcessingSequenceBarrier.java:55)
        at com.lmax.disruptor.BatchEventProcessor.run(BatchEventProcessor.java:123)
        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)

"Service Thread" #7 daemon prio=9 os_prio=0 tid=0x00007fa7480ce000 nid=0x7c25 runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C1 CompilerThread1" #6 daemon prio=9 os_prio=0 tid=0x00007fa7480be800 nid=0x7c24 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C2 CompilerThread0" #5 daemon prio=9 os_prio=0 tid=0x00007fa7480bb800 nid=0x7c23 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Signal Dispatcher" #4 daemon prio=9 os_prio=0 tid=0x00007fa7480b9000 nid=0x7c22 runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Finalizer" #3 daemon prio=8 os_prio=0 tid=0x00007fa74808c000 nid=0x7c21 in Object.wait() [0x00007fa74caea000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
        - locked <0x00000000dec7a100> (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=0x00007fa74808a000 nid=0x7c20 in Object.wait() [0x00007fa74cbeb000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        at java.lang.Object.wait(Object.java:502)
        at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:157)
        - locked <0x00000000dec7a140> (a java.lang.ref.Reference$Lock)

"VM Thread" os_prio=0 tid=0x00007fa748084800 nid=0x7c1f runnable

"GC task thread#0 (ParallelGC)" os_prio=0 tid=0x00007fa748030000 nid=0x7c1d runnable

"GC task thread#1 (ParallelGC)" os_prio=0 tid=0x00007fa748032000 nid=0x7c1e runnable

"VM Periodic Task Thread" os_prio=0 tid=0x00007fa7480d0800 nid=0x7c26 waiting on condition

JNI global references: 314

{code}

> hive metastore does not exit on start failure
> ---------------------------------------------
>
>                 Key: HIVE-13093
>                 URL: https://issues.apache.org/jira/browse/HIVE-13093
>             Project: Hive
>          Issue Type: Bug
>          Components: Metastore
>    Affects Versions: 0.13.1, 1.0.0, 1.1.1, 1.2.1
>            Reporter: Thejas M Nair
>            Assignee: Thejas M Nair
>
> If metastore startup fails for some reason, such as not being able to access the database, it fails to exit. Instead the process continues to be up in a bad state.
> This is happening because of a non daemon thread.



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