You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by GitBox <gi...@apache.org> on 2021/12/02 13:36:07 UTC

[GitHub] [pulsar] lhotari commented on issue #13092: [Tests] LockManagerImpl.close hangs and causes the test run to timeout eventually

lhotari commented on issue #13092:
URL: https://github.com/apache/pulsar/issues/13092#issuecomment-984633770


   I it seems to be a leak in the "mutex" lock / unlock in MockZooKeeper
   
   the thread dump contains this type of stacks too:
   
   ```
   "metadata-store-2857-1" #4674 prio=5 os_prio=0 cpu=17.87ms elapsed=2969.28s tid=0x00007f2ac238b800 nid=0x5935 waiting on condition  [0x00007f2a69fe1000]
      java.lang.Thread.State: WAITING (parking)
   	at jdk.internal.misc.Unsafe.park(java.base@11.0.13/Native Method)
   	- parking to wait for  <0x00000000c592e390> (a java.util.concurrent.locks.ReentrantLock$NonfairSync)
   	at java.util.concurrent.locks.LockSupport.park(java.base@11.0.13/LockSupport.java:194)
   	at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(java.base@11.0.13/AbstractQueuedSynchronizer.java:885)
   	at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(java.base@11.0.13/AbstractQueuedSynchronizer.java:917)
   	at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(java.base@11.0.13/AbstractQueuedSynchronizer.java:1240)
   	at java.util.concurrent.locks.ReentrantLock.lock(java.base@11.0.13/ReentrantLock.java:267)
   	at org.apache.zookeeper.MockZooKeeper.delete(MockZooKeeper.java:825)
   	at org.apache.zookeeper.MockZooKeeper.multi(MockZooKeeper.java:957)
   	at org.apache.zookeeper.MockZooKeeper.multi(MockZooKeeper.java:936)
   	at org.apache.pulsar.metadata.impl.ZKMetadataStore.batchOperation(ZKMetadataStore.java:148)
   	at org.apache.pulsar.metadata.impl.batching.AbstractBatchedMetadataStore.flush(AbstractBatchedMetadataStore.java:111)
   	at org.apache.pulsar.metadata.impl.batching.AbstractBatchedMetadataStore$$Lambda$214/0x00000001003de440.run(Unknown Source)
   	at java.util.concurrent.Executors$RunnableAdapter.call(java.base@11.0.13/Executors.java:515)
   	at java.util.concurrent.FutureTask.runAndReset(java.base@11.0.13/FutureTask.java:305)
   	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(java.base@11.0.13/ScheduledThreadPoolExecutor.java:305)
   	at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@11.0.13/ThreadPoolExecutor.java:1128)
   	at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@11.0.13/ThreadPoolExecutor.java:628)
   	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
   	at java.lang.Thread.run(java.base@11.0.13/Thread.java:829)
   
      Locked ownable synchronizers:
   	- <0x00000000c57f9248> (a java.util.concurrent.ThreadPoolExecutor$Worker)
   
   "metadata-store-zk-session-watcher-2858-1" #4675 prio=5 os_prio=0 cpu=0.15ms elapsed=2969.28s tid=0x00007f2ac2254800 nid=0x5936 waiting on condition  [0x00007f2a5eae8000]
      java.lang.Thread.State: WAITING (parking)
   	at jdk.internal.misc.Unsafe.park(java.base@11.0.13/Native Method)
   	- parking to wait for  <0x00000000c592e390> (a java.util.concurrent.locks.ReentrantLock$NonfairSync)
   	at java.util.concurrent.locks.LockSupport.park(java.base@11.0.13/LockSupport.java:194)
   	at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(java.base@11.0.13/AbstractQueuedSynchronizer.java:885)
   	at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(java.base@11.0.13/AbstractQueuedSynchronizer.java:917)
   	at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(java.base@11.0.13/AbstractQueuedSynchronizer.java:1240)
   	at java.util.concurrent.locks.ReentrantLock.lock(java.base@11.0.13/ReentrantLock.java:267)
   	at org.apache.zookeeper.MockZooKeeper.lambda$exists$15(MockZooKeeper.java:644)
   	at org.apache.zookeeper.MockZooKeeper$$Lambda$325/0x0000000100500040.run(Unknown Source)
   	at com.google.common.util.concurrent.MoreExecutors$DirectExecutorService.execute(MoreExecutors.java:321)
   	at org.apache.zookeeper.MockZooKeeper.exists(MockZooKeeper.java:643)
   	at org.apache.pulsar.metadata.impl.ZKSessionWatcher.checkConnectionStatus(ZKSessionWatcher.java:89)
   	- locked <0x00000000c592e450> (a org.apache.pulsar.metadata.impl.ZKSessionWatcher)
   	at org.apache.pulsar.metadata.impl.ZKSessionWatcher$$Lambda$216/0x00000001003ddc40.run(Unknown Source)
   	at org.apache.pulsar.common.util.Runnables$CatchingAndLoggingRunnable.run(Runnables.java:53)
   	at java.util.concurrent.Executors$RunnableAdapter.call(java.base@11.0.13/Executors.java:515)
   	at java.util.concurrent.FutureTask.runAndReset(java.base@11.0.13/FutureTask.java:305)
   	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(java.base@11.0.13/ScheduledThreadPoolExecutor.java:305)
   	at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@11.0.13/ThreadPoolExecutor.java:1128)
   	at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@11.0.13/ThreadPoolExecutor.java:628)
   	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
   	at java.lang.Thread.run(java.base@11.0.13/Thread.java:829)
   ```


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org