[infinispan-issues] [JBoss JIRA] (ISPN-10185) hotrod-client tests hang on Windows

Dan Berindei (Jira) issues at jboss.org
Mon May 13 10:52:48 EDT 2019


    [ https://issues.jboss.org/browse/ISPN-10185?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13732693#comment-13732693 ] 

Dan Berindei commented on ISPN-10185:
-------------------------------------

If the problem is indeed not enough {{ForkJoinPool.commonPool}} threads, we should be able to reproduce it with {{-Djava.util.concurrent.ForkJoinPool.common.parallelism=1}}.

We should also reduce the cache size in {{BaseIterationFailOverTest.testFailOver}}: with 10k entries it's more like a stress test than a functional test.

> hotrod-client tests hang on Windows
> -----------------------------------
>
>                 Key: ISPN-10185
>                 URL: https://issues.jboss.org/browse/ISPN-10185
>             Project: Infinispan
>          Issue Type: Bug
>          Components: Test Suite - Server
>    Affects Versions: 9.4.13.Final
>            Reporter: Dan Berindei
>            Priority: Major
>              Labels: testsuite_stability
>             Fix For: 10.0.0.Beta4
>
>         Attachments: ReplFailOverRemoteIteratorTest.txt
>
>
> All the {{ForkJoin.commonPool}} in the thread dump are busy doing blocking operations:
> {noformat}
> "ForkJoinPool.commonPool-worker-1" #66 prio=0 tid=0x42 nid=NA timed_waiting
>    java.lang.Thread.State: TIMED_WAITING
> 	at sun.misc.Unsafe.park(Native Method)
> 	- parking to wait for <0x75d9efe2> (a java.util.concurrent.CompletableFuture$Signaller)
> 	at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
> 	at java.util.concurrent.CompletableFuture$Signaller.block(CompletableFuture.java:1695)
> 	at java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3313)
> 	at java.util.concurrent.CompletableFuture.timedGet(CompletableFuture.java:1775)
> 	at java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1915)
> 	at org.infinispan.client.hotrod.impl.Util.await(Util.java:21)
> 	at org.infinispan.client.hotrod.impl.RemoteCacheImpl.put(RemoteCacheImpl.java:335)
> 	at org.infinispan.client.hotrod.impl.RemoteCacheSupport.put(RemoteCacheSupport.java:79)
> 	at org.infinispan.client.hotrod.impl.iteration.AbstractRemoteIteratorTest.lambda$populateCache$0(AbstractRemoteIteratorTest.java:34)
> {noformat}
> {{ForkJoinPool.commonPool}} is supposed to add new threads to maintain the default parallelism level (= number of cpus), but that doesn't seem to work because {{RemoteCacheManagerTest}} is trying to start a cache and it didn't get a {{commonPool}} thread:
> {noformat}
> "testng-RemoteCacheManagerTest" #61 prio=0 tid=0x3d nid=NA waiting
>    java.lang.Thread.State: WAITING
> 	at sun.misc.Unsafe.park(Native Method)
> 	- parking to wait for <0x23a92f0a> (a java.util.concurrent.CompletableFuture$Signaller)
> 	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
> 	at java.util.concurrent.CompletableFuture$Signaller.block(CompletableFuture.java:1693)
> 	at java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3323)
> 	at java.util.concurrent.CompletableFuture.waitingGet(CompletableFuture.java:1729)
> 	at java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1895)
> 	at org.infinispan.client.hotrod.RemoteCacheManagerTest.testStartStopAsync(RemoteCacheManagerTest.java:55)
> {noformat}
> Server threads are all free. The first test to time out was {{ProtobufRemoteIteratorIndexingTest}}, but most put operations on {{ForkJoinPool.commonPool}} are issued by {{ReplFailOverRemoteIteratorTest}}:
> {noformat}
> "testng-ReplFailOverRemoteIteratorTest" #62 prio=0 tid=0x3e nid=NA waiting
>    java.lang.Thread.State: WAITING
> 	at java.lang.Object.wait(Native Method)
> 	- waiting on <0x404a8e70> (a java.util.stream.ForEachOps$ForEachTask)
> 	at java.util.concurrent.ForkJoinTask.externalAwaitDone(ForkJoinTask.java:334)
> 	at java.util.concurrent.ForkJoinTask.doInvoke(ForkJoinTask.java:405)
> 	at java.util.concurrent.ForkJoinTask.invoke(ForkJoinTask.java:734)
> 	at java.util.stream.ForEachOps$ForEachOp.evaluateParallel(ForEachOps.java:160)
> 	at java.util.stream.ForEachOps$ForEachOp$OfInt.evaluateParallel(ForEachOps.java:189)
> 	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:233)
> 	at java.util.stream.IntPipeline.forEach(IntPipeline.java:404)
> 	at java.util.stream.IntPipeline$Head.forEach(IntPipeline.java:560)
> 	at org.infinispan.client.hotrod.impl.iteration.AbstractRemoteIteratorTest.populateCache(AbstractRemoteIteratorTest.java:34)
> 	at org.infinispan.client.hotrod.impl.iteration.BaseIterationFailOverTest.testFailOver(BaseIterationFailOverTest.java:38)
> {noformat}



--
This message was sent by Atlassian Jira
(v7.12.1#712002)


More information about the infinispan-issues mailing list