zhaoziyan created CURATOR-482:
---------------------------------
Summary: zookeeper exists waiting forever
Key: CURATOR-482
URL: https://issues.apache.org/jira/browse/CURATOR-482
Project: Apache Curator
Issue Type: Bug
Environment: server version 3.4.6
zookeeper cient version 3.4.8
curator version curator-client-2.12
linux
Reporter: zhaoziyan
Assignee: Jordan Zimmerman
exists waiting forever
server version 3.4.6
zookeeper cient version 3.4.8
curator version curator-client-2.12
because of the exists waiting forever, cause the cutator TreeCache thread block
{code:java}
// code placeholder
"ZZBOOK_UPDATE_JDID_JOB2_QuartzSchedulerThread" #781 prio=5 os_prio=0
tid=0x00007f1a7611e800 nid=0x7661 in Object.wait() [0x00007f1936cee000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:502)
at org.apache.zookeeper.ClientCnxn.submitRequest(ClientCnxn.java:1406)
- locked <0x00000000a6d2a5c8> (a org.apache.zookeeper.ClientCnxn$Packet)
at org.apache.zookeeper.ZooKeeper.exists(ZooKeeper.java:1097)
at
org.apache.curator.framework.imps.ExistsBuilderImpl$3.call(ExistsBuilderImpl.java:237)
at
org.apache.curator.framework.imps.ExistsBuilderImpl$3.call(ExistsBuilderImpl.java:226)
at org.apache.curator.RetryLoop.callWithRetry(RetryLoop.java:109)
at
org.apache.curator.framework.imps.ExistsBuilderImpl.pathInForegroundStandard(ExistsBuilderImpl.java:223)
at
org.apache.curator.framework.imps.ExistsBuilderImpl.pathInForeground(ExistsBuilderImpl.java:216)
at
org.apache.curator.framework.imps.ExistsBuilderImpl.forPath(ExistsBuilderImpl.java:175)
at
org.apache.curator.framework.imps.ExistsBuilderImpl.forPath(ExistsBuilderImpl.java:32)
at
com.dangdang.ddframe.job.reg.zookeeper.ZookeeperRegistryCenter.isExisted(ZookeeperRegistryCenter.java:210)
at
com.dangdang.ddframe.job.lite.internal.storage.JobNodeStorage.isJobNodeExisted(JobNodeStorage.java:66)
at
com.dangdang.ddframe.job.lite.internal.storage.JobNodeStorage.createJobNodeIfNeeded(JobNodeStorage.java:107)
at
com.dangdang.ddframe.job.lite.internal.execution.ExecutionService.setMisfire(ExecutionService.java:189)
at
com.dangdang.ddframe.job.lite.internal.schedule.JobTriggerListener.triggerMisfired(JobTriggerListener.java:47)
at
org.quartz.core.QuartzScheduler.notifyTriggerListenersMisfired(QuartzScheduler.java:1905)
at
org.quartz.core.SchedulerSignalerImpl.notifyTriggerListenersMisfired(SchedulerSignalerImpl.java:74)
at org.quartz.simpl.RAMJobStore.applyMisfire(RAMJobStore.java:1354)
at org.quartz.simpl.RAMJobStore.acquireNextTriggers(RAMJobStore.java:1412)
- locked <0x00000000c4c9fb10> (a java.lang.Object)
at org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:272)
"ZZBOOK_UPDATE_JDID_JOB2_Worker-1" #780 prio=5 os_prio=0 tid=0x00007f1a7611d000
nid=0x7660 in Object.wait() [0x00007f1936ef0000]
java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:568)
- locked <0x00000000c4c228c8> (a java.lang.Object)
"Curator-TreeCache-77" #779 daemon prio=5 os_prio=0 tid=0x00007f19a4091000
nid=0x765f waiting for monitor entry [0x00007f1936def000]
java.lang.Thread.State: BLOCKED (on object monitor)
at org.quartz.simpl.RAMJobStore.storeTrigger(RAMJobStore.java:413)
- waiting to lock <0x00000000c4c9fb10> (a java.lang.Object)
at org.quartz.core.QuartzScheduler.triggerJob(QuartzScheduler.java:1187)
at org.quartz.impl.StdScheduler.triggerJob(StdScheduler.java:341)
at org.quartz.impl.StdScheduler.triggerJob(StdScheduler.java:331)
at
com.dangdang.ddframe.job.lite.internal.schedule.JobScheduleController.triggerJob(JobScheduleController.java:153)
at
com.dangdang.ddframe.job.lite.internal.server.JobOperationListenerManager$JobTriggerStatusJobListener.dataChanged(JobOperationListenerManager.java:103)
at
com.dangdang.ddframe.job.lite.internal.listener.AbstractJobListener.childEvent(AbstractJobListener.java:43)
at
org.apache.curator.framework.recipes.cache.TreeCache$2.apply(TreeCache.java:741)
at
org.apache.curator.framework.recipes.cache.TreeCache$2.apply(TreeCache.java:735)
at
org.apache.curator.framework.listen.ListenerContainer$1.run(ListenerContainer.java:93)
at
org.apache.curator.shaded.com.google.common.util.concurrent.MoreExecutors$SameThreadExecutorService.execute(MoreExecutors.java:297)
at
org.apache.curator.framework.listen.ListenerContainer.forEach(ListenerContainer.java:85)
at
org.apache.curator.framework.recipes.cache.TreeCache.callListeners(TreeCache.java:734)
at
org.apache.curator.framework.recipes.cache.TreeCache.access$1700(TreeCache.java:71)
at
org.apache.curator.framework.recipes.cache.TreeCache$4.run(TreeCache.java:852)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
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)
"main-EventThread" #236 daemon prio=5 os_prio=0 tid=0x00007f1a7546a800
nid=0x74bf waiting on condition [0x00007f194e96e000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00000000c24ca218> (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 java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
at org.apache.zookeeper.ClientCnxn$EventThread.run(ClientCnxn.java:501)
"main-SendThread(tjtx-84-168.58os.org:2181)" #235 daemon prio=5 os_prio=0
tid=0x00007f1a7596c000 nid=0x74be runnable [0x00007f194ea6f000]
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:86)
- locked <0x00000000c1da74d0> (a sun.nio.ch.Util$2)
- locked <0x00000000c1da75a8> (a java.util.Collections$UnmodifiableSet)
- locked <0x00000000c1ace0a0> (a sun.nio.ch.EPollSelectorImpl)
at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97)
at
org.apache.zookeeper.ClientCnxnSocketNIO.doTransport(ClientCnxnSocketNIO.java:349)
at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1141)
{code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)