Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 86541200B78 for ; Fri, 2 Sep 2016 22:36:31 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 837DE160AAE; Fri, 2 Sep 2016 20:36:31 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 31972160A8C for ; Fri, 2 Sep 2016 22:36:30 +0200 (CEST) Received: (qmail 52931 invoked by uid 500); 2 Sep 2016 20:36:29 -0000 Mailing-List: contact dev-help@tephra.incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@tephra.incubator.apache.org Delivered-To: mailing list dev@tephra.incubator.apache.org Received: (qmail 52920 invoked by uid 99); 2 Sep 2016 20:36:29 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd2-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 02 Sep 2016 20:36:29 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd2-us-west.apache.org (ASF Mail Server at spamd2-us-west.apache.org) with ESMTP id F3D6C1A049F for ; Fri, 2 Sep 2016 20:36:28 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd2-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -4.646 X-Spam-Level: X-Spam-Status: No, score=-4.646 tagged_above=-999 required=6.31 tests=[KAM_ASCII_DIVIDERS=0.8, KAM_LAZY_DOMAIN_SECURITY=1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426] autolearn=disabled Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd2-us-west.apache.org [10.40.0.9]) (amavisd-new, port 10024) with ESMTP id mEfQXzzwA01i for ; Fri, 2 Sep 2016 20:36:24 +0000 (UTC) Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with SMTP id CB4BC5F1F3 for ; Fri, 2 Sep 2016 20:36:22 +0000 (UTC) Received: (qmail 52283 invoked by uid 99); 2 Sep 2016 20:36:22 -0000 Received: from arcas.apache.org (HELO arcas) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 02 Sep 2016 20:36:22 +0000 Received: from arcas.apache.org (localhost [127.0.0.1]) by arcas (Postfix) with ESMTP id CB7282C1B7F for ; Fri, 2 Sep 2016 20:36:21 +0000 (UTC) Date: Fri, 2 Sep 2016 20:36:21 +0000 (UTC) From: "Ali Anwar (JIRA)" To: dev@tephra.incubator.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Updated] (TEPHRA-180) Transaction Manager doesn't shut down properly in some cases MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Fri, 02 Sep 2016 20:36:31 -0000 [ https://issues.apache.org/jira/browse/TEPHRA-180?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ali Anwar updated TEPHRA-180: ----------------------------- Description: Transaction Manager doesn't shut down in the case that 'data.tx.snapshot.dir' is not configured. To reproduce, simply install tephra and start it, without changing any configurations. Below is the thread dump. The entire log file is attached. {code} 2016-09-02 20:30:24 Full thread dump Java HotSpot(TM) 64-Bit Server VM (24.75-b04 mixed mode): "metrics-logger-reporter-1-thread-1" daemon prio=10 tid=0x00007fbb88003800 nid=0x6f7c waiting on condition [0x00007fbbd445a000] java.lang.Thread.State: TIMED_WAITING (parking) at sun.misc.Unsafe.park(Native Method) - parking to wait for <0x00000007122a13d8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226) at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2082) at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1090) at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:807) at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) "zk-client-EventThread" daemon prio=10 tid=0x00007fbb98003800 nid=0x6f77 waiting on condition [0x00007fbbd4d76000] java.lang.Thread.State: WAITING (parking) at sun.misc.Unsafe.park(Native Method) - parking to wait for <0x0000000711618610> (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 java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) "main-EventThread" daemon prio=10 tid=0x00007fbbf128d800 nid=0x6f76 waiting on condition [0x00007fbbd4e77000] java.lang.Thread.State: WAITING (parking) at sun.misc.Unsafe.park(Native Method) - parking to wait for <0x00000007118e6b88> (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.zookeeper.ClientCnxn$EventThread.run(ClientCnxn.java:491) "main-SendThread(hadoop-singlenode13255-1000.dev.continuuity.net:2181)" daemon prio=10 tid=0x00007fbbf1273000 nid=0x6f75 runnable [0x00007fbbd4f78000] 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:79) at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:87) - locked <0x00000007118a7060> (a sun.nio.ch.Util$2) - locked <0x00000007118a6ff8> (a java.util.Collections$UnmodifiableSet) - locked <0x00000007118a6e18> (a sun.nio.ch.EPollSelectorImpl) at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:98) at org.apache.zookeeper.ClientCnxnSocketNIO.doTransport(ClientCnxnSocketNIO.java:338) at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1068) "com.google.inject.internal.util.$Finalizer" daemon prio=10 tid=0x00007fbbf1170000 nid=0x6f74 in Object.wait() [0x00007fbbd5079000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x0000000715c14078> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:135) - locked <0x0000000715c14078> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:151) at com.google.inject.internal.util.$Finalizer.run(Finalizer.java:114) "Service Thread" daemon prio=10 tid=0x00007fbbf0134000 nid=0x6f6d runnable [0x0000000000000000] java.lang.Thread.State: RUNNABLE "C2 CompilerThread1" daemon prio=10 tid=0x00007fbbf0131800 nid=0x6f6c waiting on condition [0x0000000000000000] java.lang.Thread.State: RUNNABLE "C2 CompilerThread0" daemon prio=10 tid=0x00007fbbf012f000 nid=0x6f6b waiting on condition [0x0000000000000000] java.lang.Thread.State: RUNNABLE "Signal Dispatcher" daemon prio=10 tid=0x00007fbbf012d000 nid=0x6f6a waiting on condition [0x0000000000000000] java.lang.Thread.State: RUNNABLE "Surrogate Locker Thread (Concurrent GC)" daemon prio=10 tid=0x00007fbbf012a800 nid=0x6f69 waiting on condition [0x0000000000000000] java.lang.Thread.State: RUNNABLE "Finalizer" daemon prio=10 tid=0x00007fbbf010a000 nid=0x6f68 in Object.wait() [0x00007fbbec508000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x0000000715c10650> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:135) - locked <0x0000000715c10650> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:151) at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209) "Reference Handler" daemon prio=10 tid=0x00007fbbf0108000 nid=0x6f67 in Object.wait() [0x00007fbbec609000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x0000000715c16068> (a java.lang.ref.Reference$Lock) at java.lang.Object.wait(Object.java:503) at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:133) - locked <0x0000000715c16068> (a java.lang.ref.Reference$Lock) "main" prio=10 tid=0x00007fbbf0028000 nid=0x6f60 waiting on condition [0x00007fbbf696f000] java.lang.Thread.State: WAITING (parking) at sun.misc.Unsafe.park(Native Method) - parking to wait for <0x0000000715c146d8> (a java.util.concurrent.CountDownLatch$Sync) at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834) at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:994) at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1303) at java.util.concurrent.CountDownLatch.await(CountDownLatch.java:236) at org.apache.tephra.TransactionServiceMain.doMain(TransactionServiceMain.java:87) at org.apache.tephra.TransactionServiceMain.main(TransactionServiceMain.java:49) "VM Thread" prio=10 tid=0x00007fbbf0103800 nid=0x6f66 runnable "Gang worker#0 (Parallel GC Threads)" prio=10 tid=0x00007fbbf0039800 nid=0x6f61 runnable "Gang worker#1 (Parallel GC Threads)" prio=10 tid=0x00007fbbf003b800 nid=0x6f62 runnable "Gang worker#2 (Parallel GC Threads)" prio=10 tid=0x00007fbbf003d000 nid=0x6f63 runnable "Gang worker#3 (Parallel GC Threads)" prio=10 tid=0x00007fbbf003f000 nid=0x6f64 runnable "Concurrent Mark-Sweep GC Thread" prio=10 tid=0x00007fbbf00bf800 nid=0x6f65 runnable "VM Periodic Task Thread" prio=10 tid=0x00007fbbf0147000 nid=0x6f6e waiting on condition JNI global references: 177 Heap par new generation total 71744K, used 27843K [0x0000000711600000, 0x00000007163d0000, 0x00000007262c0000) eden space 63808K, 31% used [0x0000000711600000, 0x0000000712970f78, 0x0000000715450000) from space 7936K, 100% used [0x0000000715c10000, 0x00000007163d0000, 0x00000007163d0000) to space 7936K, 0% used [0x0000000715450000, 0x0000000715450000, 0x0000000715c10000) concurrent mark-sweep generation total 159424K, used 1105K [0x00000007262c0000, 0x000000072fe70000, 0x00000007fae00000) concurrent-mark-sweep perm gen total 21248K, used 15349K [0x00000007fae00000, 0x00000007fc2c0000, 0x0000000800000000) {code} was: Transaction Manager doesn't shut down in the case that 'data.tx.snapshot.dir' is not configured. To reproduce, simply install tephra and start it, without changing any configurations. {code} 2016-09-02 20:30:24 Full thread dump Java HotSpot(TM) 64-Bit Server VM (24.75-b04 mixed mode): "metrics-logger-reporter-1-thread-1" daemon prio=10 tid=0x00007fbb88003800 nid=0x6f7c waiting on condition [0x00007fbbd445a000] java.lang.Thread.State: TIMED_WAITING (parking) at sun.misc.Unsafe.park(Native Method) - parking to wait for <0x00000007122a13d8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226) at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2082) at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1090) at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:807) at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) "zk-client-EventThread" daemon prio=10 tid=0x00007fbb98003800 nid=0x6f77 waiting on condition [0x00007fbbd4d76000] java.lang.Thread.State: WAITING (parking) at sun.misc.Unsafe.park(Native Method) - parking to wait for <0x0000000711618610> (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 java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) "main-EventThread" daemon prio=10 tid=0x00007fbbf128d800 nid=0x6f76 waiting on condition [0x00007fbbd4e77000] java.lang.Thread.State: WAITING (parking) at sun.misc.Unsafe.park(Native Method) - parking to wait for <0x00000007118e6b88> (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.zookeeper.ClientCnxn$EventThread.run(ClientCnxn.java:491) "main-SendThread(hadoop-singlenode13255-1000.dev.continuuity.net:2181)" daemon prio=10 tid=0x00007fbbf1273000 nid=0x6f75 runnable [0x00007fbbd4f78000] 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:79) at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:87) - locked <0x00000007118a7060> (a sun.nio.ch.Util$2) - locked <0x00000007118a6ff8> (a java.util.Collections$UnmodifiableSet) - locked <0x00000007118a6e18> (a sun.nio.ch.EPollSelectorImpl) at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:98) at org.apache.zookeeper.ClientCnxnSocketNIO.doTransport(ClientCnxnSocketNIO.java:338) at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1068) "com.google.inject.internal.util.$Finalizer" daemon prio=10 tid=0x00007fbbf1170000 nid=0x6f74 in Object.wait() [0x00007fbbd5079000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x0000000715c14078> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:135) - locked <0x0000000715c14078> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:151) at com.google.inject.internal.util.$Finalizer.run(Finalizer.java:114) "Service Thread" daemon prio=10 tid=0x00007fbbf0134000 nid=0x6f6d runnable [0x0000000000000000] java.lang.Thread.State: RUNNABLE "C2 CompilerThread1" daemon prio=10 tid=0x00007fbbf0131800 nid=0x6f6c waiting on condition [0x0000000000000000] java.lang.Thread.State: RUNNABLE "C2 CompilerThread0" daemon prio=10 tid=0x00007fbbf012f000 nid=0x6f6b waiting on condition [0x0000000000000000] java.lang.Thread.State: RUNNABLE "Signal Dispatcher" daemon prio=10 tid=0x00007fbbf012d000 nid=0x6f6a waiting on condition [0x0000000000000000] java.lang.Thread.State: RUNNABLE "Surrogate Locker Thread (Concurrent GC)" daemon prio=10 tid=0x00007fbbf012a800 nid=0x6f69 waiting on condition [0x0000000000000000] java.lang.Thread.State: RUNNABLE "Finalizer" daemon prio=10 tid=0x00007fbbf010a000 nid=0x6f68 in Object.wait() [0x00007fbbec508000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x0000000715c10650> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:135) - locked <0x0000000715c10650> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:151) at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209) "Reference Handler" daemon prio=10 tid=0x00007fbbf0108000 nid=0x6f67 in Object.wait() [0x00007fbbec609000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x0000000715c16068> (a java.lang.ref.Reference$Lock) at java.lang.Object.wait(Object.java:503) at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:133) - locked <0x0000000715c16068> (a java.lang.ref.Reference$Lock) "main" prio=10 tid=0x00007fbbf0028000 nid=0x6f60 waiting on condition [0x00007fbbf696f000] java.lang.Thread.State: WAITING (parking) at sun.misc.Unsafe.park(Native Method) - parking to wait for <0x0000000715c146d8> (a java.util.concurrent.CountDownLatch$Sync) at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834) at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:994) at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1303) at java.util.concurrent.CountDownLatch.await(CountDownLatch.java:236) at org.apache.tephra.TransactionServiceMain.doMain(TransactionServiceMain.java:87) at org.apache.tephra.TransactionServiceMain.main(TransactionServiceMain.java:49) "VM Thread" prio=10 tid=0x00007fbbf0103800 nid=0x6f66 runnable "Gang worker#0 (Parallel GC Threads)" prio=10 tid=0x00007fbbf0039800 nid=0x6f61 runnable "Gang worker#1 (Parallel GC Threads)" prio=10 tid=0x00007fbbf003b800 nid=0x6f62 runnable "Gang worker#2 (Parallel GC Threads)" prio=10 tid=0x00007fbbf003d000 nid=0x6f63 runnable "Gang worker#3 (Parallel GC Threads)" prio=10 tid=0x00007fbbf003f000 nid=0x6f64 runnable "Concurrent Mark-Sweep GC Thread" prio=10 tid=0x00007fbbf00bf800 nid=0x6f65 runnable "VM Periodic Task Thread" prio=10 tid=0x00007fbbf0147000 nid=0x6f6e waiting on condition JNI global references: 177 Heap par new generation total 71744K, used 27843K [0x0000000711600000, 0x00000007163d0000, 0x00000007262c0000) eden space 63808K, 31% used [0x0000000711600000, 0x0000000712970f78, 0x0000000715450000) from space 7936K, 100% used [0x0000000715c10000, 0x00000007163d0000, 0x00000007163d0000) to space 7936K, 0% used [0x0000000715450000, 0x0000000715450000, 0x0000000715c10000) concurrent mark-sweep generation total 159424K, used 1105K [0x00000007262c0000, 0x000000072fe70000, 0x00000007fae00000) concurrent-mark-sweep perm gen total 21248K, used 15349K [0x00000007fae00000, 0x00000007fc2c0000, 0x0000000800000000) {code} > Transaction Manager doesn't shut down properly in some cases > ------------------------------------------------------------ > > Key: TEPHRA-180 > URL: https://issues.apache.org/jira/browse/TEPHRA-180 > Project: Tephra > Issue Type: Bug > Reporter: Ali Anwar > Assignee: Poorna Chandra > > Transaction Manager doesn't shut down in the case that 'data.tx.snapshot.dir' is not configured. > To reproduce, simply install tephra and start it, without changing any configurations. > Below is the thread dump. The entire log file is attached. > {code} > 2016-09-02 20:30:24 > Full thread dump Java HotSpot(TM) 64-Bit Server VM (24.75-b04 mixed mode): > "metrics-logger-reporter-1-thread-1" daemon prio=10 tid=0x00007fbb88003800 nid=0x6f7c waiting on condition [0x00007fbbd445a000] > java.lang.Thread.State: TIMED_WAITING (parking) > at sun.misc.Unsafe.park(Native Method) > - parking to wait for <0x00000007122a13d8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) > at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226) > at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2082) > at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1090) > at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:807) > at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) > at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) > at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:745) > "zk-client-EventThread" daemon prio=10 tid=0x00007fbb98003800 nid=0x6f77 waiting on condition [0x00007fbbd4d76000] > java.lang.Thread.State: WAITING (parking) > at sun.misc.Unsafe.park(Native Method) > - parking to wait for <0x0000000711618610> (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 java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) > at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) > at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:745) > "main-EventThread" daemon prio=10 tid=0x00007fbbf128d800 nid=0x6f76 waiting on condition [0x00007fbbd4e77000] > java.lang.Thread.State: WAITING (parking) > at sun.misc.Unsafe.park(Native Method) > - parking to wait for <0x00000007118e6b88> (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.zookeeper.ClientCnxn$EventThread.run(ClientCnxn.java:491) > "main-SendThread(hadoop-singlenode13255-1000.dev.continuuity.net:2181)" daemon prio=10 tid=0x00007fbbf1273000 nid=0x6f75 runnable [0x00007fbbd4f78000] > 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:79) > at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:87) > - locked <0x00000007118a7060> (a sun.nio.ch.Util$2) > - locked <0x00000007118a6ff8> (a java.util.Collections$UnmodifiableSet) > - locked <0x00000007118a6e18> (a sun.nio.ch.EPollSelectorImpl) > at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:98) > at org.apache.zookeeper.ClientCnxnSocketNIO.doTransport(ClientCnxnSocketNIO.java:338) > at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1068) > "com.google.inject.internal.util.$Finalizer" daemon prio=10 tid=0x00007fbbf1170000 nid=0x6f74 in Object.wait() [0x00007fbbd5079000] > java.lang.Thread.State: WAITING (on object monitor) > at java.lang.Object.wait(Native Method) > - waiting on <0x0000000715c14078> (a java.lang.ref.ReferenceQueue$Lock) > at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:135) > - locked <0x0000000715c14078> (a java.lang.ref.ReferenceQueue$Lock) > at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:151) > at com.google.inject.internal.util.$Finalizer.run(Finalizer.java:114) > "Service Thread" daemon prio=10 tid=0x00007fbbf0134000 nid=0x6f6d runnable [0x0000000000000000] > java.lang.Thread.State: RUNNABLE > "C2 CompilerThread1" daemon prio=10 tid=0x00007fbbf0131800 nid=0x6f6c waiting on condition [0x0000000000000000] > java.lang.Thread.State: RUNNABLE > "C2 CompilerThread0" daemon prio=10 tid=0x00007fbbf012f000 nid=0x6f6b waiting on condition [0x0000000000000000] > java.lang.Thread.State: RUNNABLE > "Signal Dispatcher" daemon prio=10 tid=0x00007fbbf012d000 nid=0x6f6a waiting on condition [0x0000000000000000] > java.lang.Thread.State: RUNNABLE > "Surrogate Locker Thread (Concurrent GC)" daemon prio=10 tid=0x00007fbbf012a800 nid=0x6f69 waiting on condition [0x0000000000000000] > java.lang.Thread.State: RUNNABLE > "Finalizer" daemon prio=10 tid=0x00007fbbf010a000 nid=0x6f68 in Object.wait() [0x00007fbbec508000] > java.lang.Thread.State: WAITING (on object monitor) > at java.lang.Object.wait(Native Method) > - waiting on <0x0000000715c10650> (a java.lang.ref.ReferenceQueue$Lock) > at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:135) > - locked <0x0000000715c10650> (a java.lang.ref.ReferenceQueue$Lock) > at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:151) > at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209) > "Reference Handler" daemon prio=10 tid=0x00007fbbf0108000 nid=0x6f67 in Object.wait() [0x00007fbbec609000] > java.lang.Thread.State: WAITING (on object monitor) > at java.lang.Object.wait(Native Method) > - waiting on <0x0000000715c16068> (a java.lang.ref.Reference$Lock) > at java.lang.Object.wait(Object.java:503) > at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:133) > - locked <0x0000000715c16068> (a java.lang.ref.Reference$Lock) > "main" prio=10 tid=0x00007fbbf0028000 nid=0x6f60 waiting on condition [0x00007fbbf696f000] > java.lang.Thread.State: WAITING (parking) > at sun.misc.Unsafe.park(Native Method) > - parking to wait for <0x0000000715c146d8> (a java.util.concurrent.CountDownLatch$Sync) > at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) > at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834) > at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:994) > at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1303) > at java.util.concurrent.CountDownLatch.await(CountDownLatch.java:236) > at org.apache.tephra.TransactionServiceMain.doMain(TransactionServiceMain.java:87) > at org.apache.tephra.TransactionServiceMain.main(TransactionServiceMain.java:49) > "VM Thread" prio=10 tid=0x00007fbbf0103800 nid=0x6f66 runnable > "Gang worker#0 (Parallel GC Threads)" prio=10 tid=0x00007fbbf0039800 nid=0x6f61 runnable > "Gang worker#1 (Parallel GC Threads)" prio=10 tid=0x00007fbbf003b800 nid=0x6f62 runnable > "Gang worker#2 (Parallel GC Threads)" prio=10 tid=0x00007fbbf003d000 nid=0x6f63 runnable > "Gang worker#3 (Parallel GC Threads)" prio=10 tid=0x00007fbbf003f000 nid=0x6f64 runnable > "Concurrent Mark-Sweep GC Thread" prio=10 tid=0x00007fbbf00bf800 nid=0x6f65 runnable > "VM Periodic Task Thread" prio=10 tid=0x00007fbbf0147000 nid=0x6f6e waiting on condition > JNI global references: 177 > Heap > par new generation total 71744K, used 27843K [0x0000000711600000, 0x00000007163d0000, 0x00000007262c0000) > eden space 63808K, 31% used [0x0000000711600000, 0x0000000712970f78, 0x0000000715450000) > from space 7936K, 100% used [0x0000000715c10000, 0x00000007163d0000, 0x00000007163d0000) > to space 7936K, 0% used [0x0000000715450000, 0x0000000715450000, 0x0000000715c10000) > concurrent mark-sweep generation total 159424K, used 1105K [0x00000007262c0000, 0x000000072fe70000, 0x00000007fae00000) > concurrent-mark-sweep perm gen total 21248K, used 15349K [0x00000007fae00000, 0x00000007fc2c0000, 0x0000000800000000) > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)