-
Bug
-
Resolution: Unresolved
-
Major
-
None
-
None
-
None
Creating a new clustered lock is blocking
A sample stack trace is as follows:
<![CDATA[java.lang.AssertionError: Blocking call! jdk.internal.misc.Unsafe#park on thread Thread[REST-IndexedRestSearchTest-IndexedRestSearchTest-NodeA-ServerIO-32-1,5,main] at org.infinispan.util.CoreTestBlockHoundIntegration.lambda$applyTo$0(CoreTestBlockHoundIntegration.java:44) at reactor.blockhound.BlockHound$Builder.lambda$install$8(BlockHound.java:383) at reactor.blockhound.BlockHoundRuntime.checkBlocking(BlockHoundRuntime.java:89) at java.base/jdk.internal.misc.Unsafe.park(Unsafe.java) at java.base/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234) at java.base/java.util.concurrent.CompletableFuture$Signaller.block(CompletableFuture.java:1798) at java.base/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3128) at java.base/java.util.concurrent.CompletableFuture.timedGet(CompletableFuture.java:1868) at java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2021) at org.infinispan.util.concurrent.CompletableFutures.await(CompletableFutures.java:125) at org.infinispan.interceptors.impl.SimpleAsyncInvocationStage.get(SimpleAsyncInvocationStage.java:36) at org.infinispan.interceptors.impl.AsyncInterceptorChainImpl.invoke(AsyncInterceptorChainImpl.java:246) at org.infinispan.cache.impl.InvocationHelper.doInvoke(InvocationHelper.java:298) at org.infinispan.cache.impl.InvocationHelper.invoke(InvocationHelper.java:102) at org.infinispan.cache.impl.InvocationHelper.invoke(InvocationHelper.java:84) at org.infinispan.cache.impl.CacheImpl.putIfAbsent(CacheImpl.java:1340) at org.infinispan.cache.impl.DecoratedCache.putIfAbsent(DecoratedCache.java:685) at org.infinispan.cache.impl.DecoratedCache.putIfAbsent(DecoratedCache.java:590) at org.infinispan.cache.impl.AbstractDelegatingCache.putIfAbsent(AbstractDelegatingCache.java:349) at org.infinispan.cache.impl.AbstractDelegatingCache.putIfAbsent(AbstractDelegatingCache.java:349) at org.infinispan.cache.impl.AbstractDelegatingCache.putIfAbsent(AbstractDelegatingCache.java:349) at org.infinispan.cache.impl.AbstractDelegatingCache.putIfAbsent(AbstractDelegatingCache.java:349) at org.infinispan.cache.impl.AbstractDelegatingCache.putIfAbsent(AbstractDelegatingCache.java:349) at org.infinispan.cache.impl.EncoderCache.putIfAbsent(EncoderCache.java:491) at org.infinispan.lock.impl.manager.EmbeddedClusteredLockManager.createLock(EmbeddedClusteredLockManager.java:129) at java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1705) at org.infinispan.lock.impl.manager.EmbeddedClusteredLockManager.get(EmbeddedClusteredLockManager.java:120) at org.infinispan.query.impl.massindex.DistributedMassIndexerLock.getLock(DistributedMassIndexerLock.java:59) at org.infinispan.query.impl.massindex.DistributedMassIndexerLock.lock(DistributedMassIndexerLock.java:30) at org.infinispan.query.impl.massindex.DistributedExecutorMassIndexer.executeInternal(DistributedExecutorMassIndexer.java:111) at org.infinispan.query.impl.massindex.DistributedExecutorMassIndexer.purge(DistributedExecutorMassIndexer.java:74) at org.infinispan.rest.resources.SearchAdminResource.runMassIndexer(SearchAdminResource.java:117) at org.infinispan.rest.resources.SearchAdminResource.clearIndexes(SearchAdminResource.java:63) at org.infinispan.rest.framework.impl.RestDispatcherImpl.dispatch(RestDispatcherImpl.java:75) at org.infinispan.rest.RestRequestHandler.handleRestRequest(RestRequestHandler.java:124) at org.infinispan.rest.RestRequestHandler.channelRead0(RestRequestHandler.java:81) at org.infinispan.rest.Http11RequestHandler.channelRead0(Http11RequestHandler.java:33) at org.infinispan.rest.Http11RequestHandler.channelRead0(Http11RequestHandler.java:16) at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:99) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.handler.codec.http.cors.CorsHandler.channelRead(CorsHandler.java:95) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) at io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireChannelRead(CombinedChannelDuplexHandler.java:436) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:324) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:296) at io.netty.channel.CombinedChannelDuplexHandler.channelRead(CombinedChannelDuplexHandler.java:251) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:93) at org.infinispan.server.core.transport.StatsChannelHandler.channelRead(StatsChannelHandler.java:26) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:792) at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:475) at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378)
- relates to
-
ISPN-10309 Convert Remaining Parts to Non Blocking & Reduce Thread Pools
- To Do