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 2022/02/24 07:06:31 UTC

[GitHub] [pulsar] wangshaojie4039 opened a new issue #14443: Thread deadlock in stress test

wangshaojie4039 opened a new issue #14443:
URL: https://github.com/apache/pulsar/issues/14443


   **Describe the bug**
   A clear and concise description of what the bug is.
   
   **To Reproduce**
   Steps to reproduce the behavior:
   1. Go to '...'
   2. Click on '....'
   3. Scroll down to '....'
   4. See error
   
   **Expected behavior**
   A clear and concise description of what you expected to happen.
   
   **Screenshots**
   If applicable, add screenshots to help explain your problem.
   
   **Desktop (please complete the following information):**
    - OS: [e.g. iOS]
   
   **Additional context**
   "pulsar-timer-66-1" #2504 prio=5 os_prio=0 tid=0x00007ff18c194000 nid=0xaa3 waiting for monitor entry [0x00007ff1cc1e8000]
      java.lang.Thread.State: BLOCKED (on object monitor)
           at org.apache.pulsar.client.impl.ProducerImpl.run(ProducerImpl.java:1552)
           - waiting to lock <0x00000000c8032000> (a org.apache.pulsar.client.impl.ProducerImpl)
           at io.netty.util.HashedWheelTimer$HashedWheelTimeout.expire(HashedWheelTimer.java:672)
           at io.netty.util.HashedWheelTimer$HashedWheelBucket.expireTimeouts(HashedWheelTimer.java:747)
           at io.netty.util.HashedWheelTimer$Worker.run(HashedWheelTimer.java:472)
           at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
           at java.lang.Thread.run(Thread.java:748)
   
   
   pulsar-timer-66-1" #2504 prio=5 os_prio=0 tid=0x00007ff18c194000 nid=0xaa3 waiting for monitor entry [0x00007ff1cc1e8000]
      java.lang.Thread.State: BLOCKED (on object monitor)
           at org.apache.pulsar.client.impl.ProducerImpl.run(ProducerImpl.java:1552)
           - waiting to lock <0x00000000c8032000> (a org.apache.pulsar.client.impl.ProducerImpl)
           at io.netty.util.HashedWheelTimer$HashedWheelTimeout.expire(HashedWheelTimer.java:672)
           at io.netty.util.HashedWheelTimer$HashedWheelBucket.expireTimeouts(HashedWheelTimer.java:747)
           at io.netty.util.HashedWheelTimer$Worker.run(HashedWheelTimer.java:472)
           at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
           at java.lang.Thread.run(Thread.java:748)
   
   "pulsar-client-io-63-4" #2507 prio=5 os_prio=0 tid=0x00007ff18c0e0000 nid=0xaa2 waiting on condition [0x00007ff1cc2e8000]
      java.lang.Thread.State: WAITING (parking)
           at sun.misc.Unsafe.park(Native Method)
           - parking to wait for  <0x00000000c8032140> (a java.util.concurrent.Semaphore$FairSync)
           at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
           at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836)
           at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:997)
           at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1304)
           at java.util.concurrent.Semaphore.acquire(Semaphore.java:312)
           at org.apache.pulsar.client.impl.ProducerImpl.canEnqueueRequest(ProducerImpl.java:766)
           at org.apache.pulsar.client.impl.ProducerImpl.sendAsync(ProducerImpl.java:377)
           at org.apache.pulsar.client.impl.ProducerImpl.internalSendAsync(ProducerImpl.java:281)
           at org.apache.pulsar.client.impl.ProducerBase.sendAsync(ProducerBase.java:76)
           at com.chinamobile.tuxedo.amqp.store.OpAddMessage.initiate(OpAddMessage.java:129)
           at com.chinamobile.tuxedo.amqp.store.MessageLogPulsarImpl.updateMessageLogOpened(MessageLogPulsarImpl.java:112)
           at com.chinamobile.tuxedo.amqp.store.MessageLogPulsarImpl.lambda$openMessageLog$0(MessageLogPulsarImpl.java:93)
           at com.chinamobile.tuxedo.amqp.store.MessageLogPulsarImpl$$Lambda$743/601077192.accept(Unknown Source)
           at java.util.concurrent.CompletableFuture.uniAccept(CompletableFuture.java:656)
           at java.util.concurrent.CompletableFuture$UniAccept.tryFire(CompletableFuture.java:632)
           at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)
           at java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1962)
           at org.apache.pulsar.client.impl.ProducerImpl.lambda$resendMessages$19(ProducerImpl.java:1468)
           - locked <0x00000000c8032000> (a org.apache.pulsar.client.impl.ProducerImpl)
           at org.apache.pulsar.client.impl.ProducerImpl$$Lambda$765/1246310252.run(Unknown Source)
           at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164)
           at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:472)
           at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:384)
           at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
           at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
   


-- 
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



[GitHub] [pulsar] tjiuming commented on issue #14443: Thread deadlock in stress test

Posted by GitBox <gi...@apache.org>.
tjiuming commented on issue #14443:
URL: https://github.com/apache/pulsar/issues/14443#issuecomment-1057624722


   there is no deadlock condition here.  please see the  source code of `ProducerImpl` line 1495, 1552 and 1594. They are required a same lock. 


-- 
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



[GitHub] [pulsar] tjiuming commented on issue #14443: Thread deadlock in stress test

Posted by GitBox <gi...@apache.org>.
tjiuming commented on issue #14443:
URL: https://github.com/apache/pulsar/issues/14443#issuecomment-1057621466


   ![image](https://user-images.githubusercontent.com/95597048/156488785-c1545fa4-210c-4192-b56a-1b37d6861eeb.png)
   


-- 
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



[GitHub] [pulsar] wangshaojie4039 commented on issue #14443: Thread deadlock in stress test

Posted by GitBox <gi...@apache.org>.
wangshaojie4039 commented on issue #14443:
URL: https://github.com/apache/pulsar/issues/14443#issuecomment-1057577522


   [ft-report-dump.pdf](https://github.com/apache/pulsar/files/8174120/ft-report-dump.pdf)
   [死锁问题.txt](https://github.com/apache/pulsar/files/8174121/default.txt)
   


-- 
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



[GitHub] [pulsar] tjiuming commented on issue #14443: Thread deadlock in stress test

Posted by GitBox <gi...@apache.org>.
tjiuming commented on issue #14443:
URL: https://github.com/apache/pulsar/issues/14443#issuecomment-1056652178


   seems it's not a deadlock, just waiting locked until success.


-- 
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