[JBoss JIRA] (ISPN-10362) Unify remove command initialization and invocation
by Dan Berindei (Jira)
[ https://issues.jboss.org/browse/ISPN-10362?page=com.atlassian.jira.plugin... ]
Dan Berindei updated ISPN-10362:
--------------------------------
Sprint: DataGrid Sprint #30, DataGrid Sprint #33 (was: DataGrid Sprint #30)
> Unify remove command initialization and invocation
> --------------------------------------------------
>
> Key: ISPN-10362
> URL: https://issues.jboss.org/browse/ISPN-10362
> Project: Infinispan
> Issue Type: Enhancement
> Components: Core
> Affects Versions: 10.0.0.Beta3
> Reporter: Dan Berindei
> Assignee: Dan Berindei
> Priority: Major
> Fix For: 10.0.0.CR2, 10.0.0.Final
>
>
> ISPN-10322 unified command initialization with {{InitializableCommand}}, but we should go further and unify initialization with invocation.
> We can replace the current {{ReplicableCommand.invokeAsync}} and {{InitializableCommand.init(ComponentRegistry()}} methods with a method {{CacheRpcCommand.invokeAsync(ComponentRegistry)}} (or maybe {{execute}}?).
> For global commands we can create a {{GlobalRpcCommand}} interface with a method {{invokeAsync(GlobalComponentRegistry)}}.
--
This message was sent by Atlassian Jira
(v7.13.5#713005)
5 years, 4 months
[JBoss JIRA] (ISPN-10309) Convert Remaining Parts to Non Blocking & Reduce Thread Pools
by Dan Berindei (Jira)
[ https://issues.jboss.org/browse/ISPN-10309?page=com.atlassian.jira.plugin... ]
Dan Berindei updated ISPN-10309:
--------------------------------
Sprint: DataGrid Sprint #29, DataGrid Sprint #30, DataGrid Sprint #33 (was: DataGrid Sprint #29, DataGrid Sprint #30)
> Convert Remaining Parts to Non Blocking & Reduce Thread Pools
> -------------------------------------------------------------
>
> Key: ISPN-10309
> URL: https://issues.jboss.org/browse/ISPN-10309
> Project: Infinispan
> Issue Type: Enhancement
> Components: Core
> Reporter: Will Burns
> Assignee: Will Burns
> Priority: Major
> Fix For: 10.0.0.Final
>
>
> We would love to get our thread pools down to a single CPU thread pool (size = numCores) and a blocking thread pool (arbitrarily large). We may also require a scheduler pool for various options as well (limited size 1-2?).
> To do this we need to remove remnants of our blocking code as possible. Possible issues for blocking are mostly around locks and io operations.
> The persistence layer was completed with ISPN-9722 so that is not an issue.
> The requirement around locking can be relaxed if the locks are guaranteed to be small in scope and do not wrap other blocking operations. An example would be a lock such as ones in CHM as long as we don't have large blocks for functional argument types.
> If code cannot be made non blocking we must offload the operation to the blocking thread pool. Care must be taken to ensure that once the blocking portion of code is completed that we switch back the to CPU thread pool as soon as possible. The listener API for example is violating this and will run code in Infinispan from any thread that completes the listener that could be done from a user.
--
This message was sent by Atlassian Jira
(v7.13.5#713005)
5 years, 4 months
[JBoss JIRA] (ISPN-10186) Error stopping cache manager
by Dan Berindei (Jira)
[ https://issues.jboss.org/browse/ISPN-10186?page=com.atlassian.jira.plugin... ]
Dan Berindei reassigned ISPN-10186:
-----------------------------------
Assignee: Dan Berindei
> Error stopping cache manager
> ----------------------------
>
> Key: ISPN-10186
> URL: https://issues.jboss.org/browse/ISPN-10186
> Project: Infinispan
> Issue Type: Bug
> Affects Versions: 10.0.0.Beta3
> Reporter: Galder Zamarreño
> Assignee: Dan Berindei
> Priority: Major
> Fix For: 10.0.0.CR2, 10.0.0.Final
>
>
> {code}
> [m [1;31m09:44:50,038 ERROR org.infinispan.factories.impl.BasicComponentRegistryImpl [] - Error stopping component org.infinispan.counter.api.CounterManager
> org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.counter.impl.manager.EmbeddedCounterManager.stop() on object of type EmbeddedCounterManager
> at org.infinispan.commons.util.SecurityActions.lambda$invokeAccessibly$0(SecurityActions.java:83)
> at org.infinispan.commons.util.SecurityActions.doPrivileged(SecurityActions.java:71)
> at org.infinispan.commons.util.SecurityActions.invokeAccessibly(SecurityActions.java:76)
> at org.infinispan.commons.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:181)
> at org.infinispan.factories.impl.BasicComponentRegistryImpl.performStop(BasicComponentRegistryImpl.java:601)
> at org.infinispan.factories.impl.BasicComponentRegistryImpl.stopWrapper(BasicComponentRegistryImpl.java:590)
> at org.infinispan.factories.impl.BasicComponentRegistryImpl.stop(BasicComponentRegistryImpl.java:461)
> at org.infinispan.factories.AbstractComponentRegistry.internalStop(AbstractComponentRegistry.java:431)
> at org.infinispan.factories.AbstractComponentRegistry.stop(AbstractComponentRegistry.java:366)
> at org.infinispan.manager.DefaultCacheManager.stop(DefaultCacheManager.java:777)
> at lucom.ip.web.context.WebApplicationInitializer.destroy(WebApplicationInitializer.java:815)
> at lucom.ip.web.context.WebApplicationInitializer.contextDestroyed(WebApplicationInitializer.java:711)
> at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4624)
> at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5263)
> at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
> at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1443)
> at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1432)
> at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
> at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
> at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:140)
> at org.apache.catalina.core.ContainerBase.stopInternal(ContainerBase.java:999)
> at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
> at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1443)
> at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1432)
> at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
> at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
> at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:140)
> at org.apache.catalina.core.ContainerBase.stopInternal(ContainerBase.java:999)
> at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
> at org.apache.catalina.core.StandardService.stopInternal(StandardService.java:471)
> at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
> at org.apache.catalina.core.StandardServer.stopInternal(StandardServer.java:791)
> at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
> at org.apache.catalina.startup.Catalina.stop(Catalina.java:755)
> at org.apache.catalina.startup.Catalina.start(Catalina.java:717)
> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.base/java.lang.reflect.Method.invoke(Method.java:566)
> at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:353)
> at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:493)
> Caused by: java.util.concurrent.CompletionException: org.infinispan.commons.CacheException: org.infinispan.IllegalLifecycleStateException: Cache container has been stopped and cannot be reused. Recreate the cache container.
> at org.infinispan.util.concurrent.CompletionStages.join(CompletionStages.java:68)
> at org.infinispan.notifications.Listenable.removeListener(Listenable.java:43)
> at org.infinispan.cache.impl.AbstractDelegatingCache.removeListener(AbstractDelegatingCache.java:561)
> at org.infinispan.counter.impl.listener.CounterManagerNotificationManager.stop(CounterManagerNotificationManager.java:130)
> at org.infinispan.counter.impl.manager.EmbeddedCounterManager.stop(EmbeddedCounterManager.java:101)
> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.base/java.lang.reflect.Method.invoke(Method.java:566)
> at org.infinispan.commons.util.SecurityActions.lambda$invokeAccessibly$0(SecurityActions.java:79)
> ... 40 more
> Caused by: org.infinispan.commons.CacheException: org.infinispan.IllegalLifecycleStateException: Cache container has been stopped and cannot be reused. Recreate the cache container.
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl.lambda$removeListenerAsync$16(CacheNotifierImpl.java:2039)
> at org.infinispan.manager.impl.LocalClusterExecutor.lambda$submitConsumer$3(LocalClusterExecutor.java:78)
> at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:859)
> at java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:837)
> at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:506)
> at java.base/java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2088)
> at org.infinispan.manager.impl.LocalClusterExecutor.lambda$localInvocation$6(LocalClusterExecutor.java:97)
> at org.infinispan.util.concurrent.BlockingTaskAwareExecutorServiceImpl$RunnableWrapper.run(BlockingTaskAwareExecutorServiceImpl.java:212)
> at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
> at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
> at java.base/java.lang.Thread.run(Thread.java:834)
> Caused by: org.infinispan.IllegalLifecycleStateException: Cache container has been stopped and cannot be reused. Recreate the cache container.
> at org.infinispan.manager.DefaultCacheManager.assertIsNotTerminated(DefaultCacheManager.java:1023)
> at org.infinispan.manager.DefaultCacheManager.internalGetCache(DefaultCacheManager.java:474)
> at org.infinispan.manager.DefaultCacheManager.getCache(DefaultCacheManager.java:470)
> at org.infinispan.manager.DefaultCacheManager.getCache(DefaultCacheManager.java:456)
> at org.infinispan.manager.impl.AbstractDelegatingEmbeddedCacheManager.getCache(AbstractDelegatingEmbeddedCacheManager.java:188)
> at org.infinispan.manager.impl.UnwrappingEmbeddedCacheManager.getCache(UnwrappingEmbeddedCacheManager.java:25)
> at org.infinispan.notifications.cachelistener.cluster.ClusterListenerRemoveCallable.apply(ClusterListenerRemoveCallable.java:39)
> at org.infinispan.notifications.cachelistener.cluster.ClusterListenerRemoveCallable.apply(ClusterListenerRemoveCallable.java:25)
> at org.infinispan.manager.impl.LocalClusterExecutor.lambda$localInvocation$6(LocalClusterExecutor.java:94)
> ... 4 more
> {code}
--
This message was sent by Atlassian Jira
(v7.13.5#713005)
5 years, 4 months
[JBoss JIRA] (ISPN-10186) Error stopping cache manager
by Dan Berindei (Jira)
[ https://issues.jboss.org/browse/ISPN-10186?page=com.atlassian.jira.plugin... ]
Dan Berindei updated ISPN-10186:
--------------------------------
Fix Version/s: 10.0.0.CR2
> Error stopping cache manager
> ----------------------------
>
> Key: ISPN-10186
> URL: https://issues.jboss.org/browse/ISPN-10186
> Project: Infinispan
> Issue Type: Bug
> Affects Versions: 10.0.0.Beta3
> Reporter: Galder Zamarreño
> Assignee: Dan Berindei
> Priority: Major
> Fix For: 10.0.0.CR2, 10.0.0.Final
>
>
> {code}
> [m [1;31m09:44:50,038 ERROR org.infinispan.factories.impl.BasicComponentRegistryImpl [] - Error stopping component org.infinispan.counter.api.CounterManager
> org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.counter.impl.manager.EmbeddedCounterManager.stop() on object of type EmbeddedCounterManager
> at org.infinispan.commons.util.SecurityActions.lambda$invokeAccessibly$0(SecurityActions.java:83)
> at org.infinispan.commons.util.SecurityActions.doPrivileged(SecurityActions.java:71)
> at org.infinispan.commons.util.SecurityActions.invokeAccessibly(SecurityActions.java:76)
> at org.infinispan.commons.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:181)
> at org.infinispan.factories.impl.BasicComponentRegistryImpl.performStop(BasicComponentRegistryImpl.java:601)
> at org.infinispan.factories.impl.BasicComponentRegistryImpl.stopWrapper(BasicComponentRegistryImpl.java:590)
> at org.infinispan.factories.impl.BasicComponentRegistryImpl.stop(BasicComponentRegistryImpl.java:461)
> at org.infinispan.factories.AbstractComponentRegistry.internalStop(AbstractComponentRegistry.java:431)
> at org.infinispan.factories.AbstractComponentRegistry.stop(AbstractComponentRegistry.java:366)
> at org.infinispan.manager.DefaultCacheManager.stop(DefaultCacheManager.java:777)
> at lucom.ip.web.context.WebApplicationInitializer.destroy(WebApplicationInitializer.java:815)
> at lucom.ip.web.context.WebApplicationInitializer.contextDestroyed(WebApplicationInitializer.java:711)
> at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4624)
> at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5263)
> at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
> at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1443)
> at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1432)
> at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
> at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
> at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:140)
> at org.apache.catalina.core.ContainerBase.stopInternal(ContainerBase.java:999)
> at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
> at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1443)
> at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1432)
> at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
> at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
> at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:140)
> at org.apache.catalina.core.ContainerBase.stopInternal(ContainerBase.java:999)
> at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
> at org.apache.catalina.core.StandardService.stopInternal(StandardService.java:471)
> at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
> at org.apache.catalina.core.StandardServer.stopInternal(StandardServer.java:791)
> at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
> at org.apache.catalina.startup.Catalina.stop(Catalina.java:755)
> at org.apache.catalina.startup.Catalina.start(Catalina.java:717)
> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.base/java.lang.reflect.Method.invoke(Method.java:566)
> at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:353)
> at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:493)
> Caused by: java.util.concurrent.CompletionException: org.infinispan.commons.CacheException: org.infinispan.IllegalLifecycleStateException: Cache container has been stopped and cannot be reused. Recreate the cache container.
> at org.infinispan.util.concurrent.CompletionStages.join(CompletionStages.java:68)
> at org.infinispan.notifications.Listenable.removeListener(Listenable.java:43)
> at org.infinispan.cache.impl.AbstractDelegatingCache.removeListener(AbstractDelegatingCache.java:561)
> at org.infinispan.counter.impl.listener.CounterManagerNotificationManager.stop(CounterManagerNotificationManager.java:130)
> at org.infinispan.counter.impl.manager.EmbeddedCounterManager.stop(EmbeddedCounterManager.java:101)
> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.base/java.lang.reflect.Method.invoke(Method.java:566)
> at org.infinispan.commons.util.SecurityActions.lambda$invokeAccessibly$0(SecurityActions.java:79)
> ... 40 more
> Caused by: org.infinispan.commons.CacheException: org.infinispan.IllegalLifecycleStateException: Cache container has been stopped and cannot be reused. Recreate the cache container.
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl.lambda$removeListenerAsync$16(CacheNotifierImpl.java:2039)
> at org.infinispan.manager.impl.LocalClusterExecutor.lambda$submitConsumer$3(LocalClusterExecutor.java:78)
> at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:859)
> at java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:837)
> at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:506)
> at java.base/java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2088)
> at org.infinispan.manager.impl.LocalClusterExecutor.lambda$localInvocation$6(LocalClusterExecutor.java:97)
> at org.infinispan.util.concurrent.BlockingTaskAwareExecutorServiceImpl$RunnableWrapper.run(BlockingTaskAwareExecutorServiceImpl.java:212)
> at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
> at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
> at java.base/java.lang.Thread.run(Thread.java:834)
> Caused by: org.infinispan.IllegalLifecycleStateException: Cache container has been stopped and cannot be reused. Recreate the cache container.
> at org.infinispan.manager.DefaultCacheManager.assertIsNotTerminated(DefaultCacheManager.java:1023)
> at org.infinispan.manager.DefaultCacheManager.internalGetCache(DefaultCacheManager.java:474)
> at org.infinispan.manager.DefaultCacheManager.getCache(DefaultCacheManager.java:470)
> at org.infinispan.manager.DefaultCacheManager.getCache(DefaultCacheManager.java:456)
> at org.infinispan.manager.impl.AbstractDelegatingEmbeddedCacheManager.getCache(AbstractDelegatingEmbeddedCacheManager.java:188)
> at org.infinispan.manager.impl.UnwrappingEmbeddedCacheManager.getCache(UnwrappingEmbeddedCacheManager.java:25)
> at org.infinispan.notifications.cachelistener.cluster.ClusterListenerRemoveCallable.apply(ClusterListenerRemoveCallable.java:39)
> at org.infinispan.notifications.cachelistener.cluster.ClusterListenerRemoveCallable.apply(ClusterListenerRemoveCallable.java:25)
> at org.infinispan.manager.impl.LocalClusterExecutor.lambda$localInvocation$6(LocalClusterExecutor.java:94)
> ... 4 more
> {code}
--
This message was sent by Atlassian Jira
(v7.13.5#713005)
5 years, 4 months
[JBoss JIRA] (ISPN-9541) Module initialization is not thread-safe
by Dan Berindei (Jira)
[ https://issues.jboss.org/browse/ISPN-9541?page=com.atlassian.jira.plugin.... ]
Dan Berindei updated ISPN-9541:
-------------------------------
Status: Pull Request Sent (was: Open)
Git Pull Request: https://github.com/infinispan/infinispan/pull/7239
> Module initialization is not thread-safe
> ----------------------------------------
>
> Key: ISPN-9541
> URL: https://issues.jboss.org/browse/ISPN-9541
> Project: Infinispan
> Issue Type: Bug
> Components: Core, Server
> Affects Versions: 9.4.0.CR3
> Reporter: Dan Berindei
> Assignee: Dan Berindei
> Priority: Major
> Fix For: 10.0.0.CR2, 10.0.0.Final
>
>
> In my ISPN-9127 fix I created a {{BasicComponentRegistry}} interface that represents a mostly-read-only collection of components. It has {{replaceComponent()}} method and a {{rewire()}} method for testing purposes, but it turns out modules were also relying on the ability to replace existing components in order to work.
> Replacing global components is normally safe during the {{ModuleLifecycle.cacheManagerStarting()}}, because none of the components are started yet, so when a component starts later we can still start its dependencies first. But because some modules starts some global components, e.g. by calling {{manager.getCache(name)}}, that assumption breaks.
> The {{infinispan-server-event-logger}} module is a bit more sneaky: it doesn't replace a component, instead it replaces the actual implementation of the event logger in the {{EventLogManager}} component. Events that happen before the module's {{cacheManagerStarting()}} or after {{cacheManagerStopping()}} will be silently dropped from the persistent event log.
> I am investigating making the module a factory of factories. Instead of having a monolitic {{cacheManagerStarting()}} method, it could define a set of components that it can create, and a set of components that should be started before the cache manager is "running". We probably need a way to depend on other modules as well, maybe reusing the {{@Inject}} and {{@ComponentName}} annotations.
--
This message was sent by Atlassian Jira
(v7.13.5#713005)
5 years, 4 months
[JBoss JIRA] (ISPN-9541) Module initialization is not thread-safe
by Dan Berindei (Jira)
[ https://issues.jboss.org/browse/ISPN-9541?page=com.atlassian.jira.plugin.... ]
Dan Berindei updated ISPN-9541:
-------------------------------
Fix Version/s: 10.0.0.CR2
> Module initialization is not thread-safe
> ----------------------------------------
>
> Key: ISPN-9541
> URL: https://issues.jboss.org/browse/ISPN-9541
> Project: Infinispan
> Issue Type: Bug
> Components: Core, Server
> Affects Versions: 9.4.0.CR3
> Reporter: Dan Berindei
> Assignee: Dan Berindei
> Priority: Major
> Fix For: 10.0.0.CR2, 10.0.0.Final
>
>
> In my ISPN-9127 fix I created a {{BasicComponentRegistry}} interface that represents a mostly-read-only collection of components. It has {{replaceComponent()}} method and a {{rewire()}} method for testing purposes, but it turns out modules were also relying on the ability to replace existing components in order to work.
> Replacing global components is normally safe during the {{ModuleLifecycle.cacheManagerStarting()}}, because none of the components are started yet, so when a component starts later we can still start its dependencies first. But because some modules starts some global components, e.g. by calling {{manager.getCache(name)}}, that assumption breaks.
> The {{infinispan-server-event-logger}} module is a bit more sneaky: it doesn't replace a component, instead it replaces the actual implementation of the event logger in the {{EventLogManager}} component. Events that happen before the module's {{cacheManagerStarting()}} or after {{cacheManagerStopping()}} will be silently dropped from the persistent event log.
> I am investigating making the module a factory of factories. Instead of having a monolitic {{cacheManagerStarting()}} method, it could define a set of components that it can create, and a set of components that should be started before the cache manager is "running". We probably need a way to depend on other modules as well, maybe reusing the {{@Inject}} and {{@ComponentName}} annotations.
--
This message was sent by Atlassian Jira
(v7.13.5#713005)
5 years, 4 months
[JBoss JIRA] (ISPN-10186) Error stopping cache manager
by Dan Berindei (Jira)
[ https://issues.jboss.org/browse/ISPN-10186?page=com.atlassian.jira.plugin... ]
Dan Berindei updated ISPN-10186:
--------------------------------
Status: Open (was: New)
> Error stopping cache manager
> ----------------------------
>
> Key: ISPN-10186
> URL: https://issues.jboss.org/browse/ISPN-10186
> Project: Infinispan
> Issue Type: Bug
> Affects Versions: 10.0.0.Beta3
> Reporter: Galder Zamarreño
> Priority: Major
> Fix For: 10.0.0.Final
>
>
> {code}
> [m [1;31m09:44:50,038 ERROR org.infinispan.factories.impl.BasicComponentRegistryImpl [] - Error stopping component org.infinispan.counter.api.CounterManager
> org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.counter.impl.manager.EmbeddedCounterManager.stop() on object of type EmbeddedCounterManager
> at org.infinispan.commons.util.SecurityActions.lambda$invokeAccessibly$0(SecurityActions.java:83)
> at org.infinispan.commons.util.SecurityActions.doPrivileged(SecurityActions.java:71)
> at org.infinispan.commons.util.SecurityActions.invokeAccessibly(SecurityActions.java:76)
> at org.infinispan.commons.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:181)
> at org.infinispan.factories.impl.BasicComponentRegistryImpl.performStop(BasicComponentRegistryImpl.java:601)
> at org.infinispan.factories.impl.BasicComponentRegistryImpl.stopWrapper(BasicComponentRegistryImpl.java:590)
> at org.infinispan.factories.impl.BasicComponentRegistryImpl.stop(BasicComponentRegistryImpl.java:461)
> at org.infinispan.factories.AbstractComponentRegistry.internalStop(AbstractComponentRegistry.java:431)
> at org.infinispan.factories.AbstractComponentRegistry.stop(AbstractComponentRegistry.java:366)
> at org.infinispan.manager.DefaultCacheManager.stop(DefaultCacheManager.java:777)
> at lucom.ip.web.context.WebApplicationInitializer.destroy(WebApplicationInitializer.java:815)
> at lucom.ip.web.context.WebApplicationInitializer.contextDestroyed(WebApplicationInitializer.java:711)
> at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4624)
> at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5263)
> at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
> at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1443)
> at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1432)
> at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
> at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
> at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:140)
> at org.apache.catalina.core.ContainerBase.stopInternal(ContainerBase.java:999)
> at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
> at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1443)
> at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1432)
> at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
> at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
> at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:140)
> at org.apache.catalina.core.ContainerBase.stopInternal(ContainerBase.java:999)
> at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
> at org.apache.catalina.core.StandardService.stopInternal(StandardService.java:471)
> at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
> at org.apache.catalina.core.StandardServer.stopInternal(StandardServer.java:791)
> at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
> at org.apache.catalina.startup.Catalina.stop(Catalina.java:755)
> at org.apache.catalina.startup.Catalina.start(Catalina.java:717)
> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.base/java.lang.reflect.Method.invoke(Method.java:566)
> at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:353)
> at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:493)
> Caused by: java.util.concurrent.CompletionException: org.infinispan.commons.CacheException: org.infinispan.IllegalLifecycleStateException: Cache container has been stopped and cannot be reused. Recreate the cache container.
> at org.infinispan.util.concurrent.CompletionStages.join(CompletionStages.java:68)
> at org.infinispan.notifications.Listenable.removeListener(Listenable.java:43)
> at org.infinispan.cache.impl.AbstractDelegatingCache.removeListener(AbstractDelegatingCache.java:561)
> at org.infinispan.counter.impl.listener.CounterManagerNotificationManager.stop(CounterManagerNotificationManager.java:130)
> at org.infinispan.counter.impl.manager.EmbeddedCounterManager.stop(EmbeddedCounterManager.java:101)
> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.base/java.lang.reflect.Method.invoke(Method.java:566)
> at org.infinispan.commons.util.SecurityActions.lambda$invokeAccessibly$0(SecurityActions.java:79)
> ... 40 more
> Caused by: org.infinispan.commons.CacheException: org.infinispan.IllegalLifecycleStateException: Cache container has been stopped and cannot be reused. Recreate the cache container.
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl.lambda$removeListenerAsync$16(CacheNotifierImpl.java:2039)
> at org.infinispan.manager.impl.LocalClusterExecutor.lambda$submitConsumer$3(LocalClusterExecutor.java:78)
> at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:859)
> at java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:837)
> at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:506)
> at java.base/java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2088)
> at org.infinispan.manager.impl.LocalClusterExecutor.lambda$localInvocation$6(LocalClusterExecutor.java:97)
> at org.infinispan.util.concurrent.BlockingTaskAwareExecutorServiceImpl$RunnableWrapper.run(BlockingTaskAwareExecutorServiceImpl.java:212)
> at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
> at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
> at java.base/java.lang.Thread.run(Thread.java:834)
> Caused by: org.infinispan.IllegalLifecycleStateException: Cache container has been stopped and cannot be reused. Recreate the cache container.
> at org.infinispan.manager.DefaultCacheManager.assertIsNotTerminated(DefaultCacheManager.java:1023)
> at org.infinispan.manager.DefaultCacheManager.internalGetCache(DefaultCacheManager.java:474)
> at org.infinispan.manager.DefaultCacheManager.getCache(DefaultCacheManager.java:470)
> at org.infinispan.manager.DefaultCacheManager.getCache(DefaultCacheManager.java:456)
> at org.infinispan.manager.impl.AbstractDelegatingEmbeddedCacheManager.getCache(AbstractDelegatingEmbeddedCacheManager.java:188)
> at org.infinispan.manager.impl.UnwrappingEmbeddedCacheManager.getCache(UnwrappingEmbeddedCacheManager.java:25)
> at org.infinispan.notifications.cachelistener.cluster.ClusterListenerRemoveCallable.apply(ClusterListenerRemoveCallable.java:39)
> at org.infinispan.notifications.cachelistener.cluster.ClusterListenerRemoveCallable.apply(ClusterListenerRemoveCallable.java:25)
> at org.infinispan.manager.impl.LocalClusterExecutor.lambda$localInvocation$6(LocalClusterExecutor.java:94)
> ... 4 more
> {code}
--
This message was sent by Atlassian Jira
(v7.13.5#713005)
5 years, 4 months
[JBoss JIRA] (ISPN-10186) Error stopping cache manager
by Dan Berindei (Jira)
[ https://issues.jboss.org/browse/ISPN-10186?page=com.atlassian.jira.plugin... ]
Dan Berindei updated ISPN-10186:
--------------------------------
Status: Pull Request Sent (was: Open)
Git Pull Request: https://github.com/infinispan/infinispan/pull/7239
> Error stopping cache manager
> ----------------------------
>
> Key: ISPN-10186
> URL: https://issues.jboss.org/browse/ISPN-10186
> Project: Infinispan
> Issue Type: Bug
> Affects Versions: 10.0.0.Beta3
> Reporter: Galder Zamarreño
> Priority: Major
> Fix For: 10.0.0.Final
>
>
> {code}
> [m [1;31m09:44:50,038 ERROR org.infinispan.factories.impl.BasicComponentRegistryImpl [] - Error stopping component org.infinispan.counter.api.CounterManager
> org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.counter.impl.manager.EmbeddedCounterManager.stop() on object of type EmbeddedCounterManager
> at org.infinispan.commons.util.SecurityActions.lambda$invokeAccessibly$0(SecurityActions.java:83)
> at org.infinispan.commons.util.SecurityActions.doPrivileged(SecurityActions.java:71)
> at org.infinispan.commons.util.SecurityActions.invokeAccessibly(SecurityActions.java:76)
> at org.infinispan.commons.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:181)
> at org.infinispan.factories.impl.BasicComponentRegistryImpl.performStop(BasicComponentRegistryImpl.java:601)
> at org.infinispan.factories.impl.BasicComponentRegistryImpl.stopWrapper(BasicComponentRegistryImpl.java:590)
> at org.infinispan.factories.impl.BasicComponentRegistryImpl.stop(BasicComponentRegistryImpl.java:461)
> at org.infinispan.factories.AbstractComponentRegistry.internalStop(AbstractComponentRegistry.java:431)
> at org.infinispan.factories.AbstractComponentRegistry.stop(AbstractComponentRegistry.java:366)
> at org.infinispan.manager.DefaultCacheManager.stop(DefaultCacheManager.java:777)
> at lucom.ip.web.context.WebApplicationInitializer.destroy(WebApplicationInitializer.java:815)
> at lucom.ip.web.context.WebApplicationInitializer.contextDestroyed(WebApplicationInitializer.java:711)
> at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4624)
> at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5263)
> at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
> at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1443)
> at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1432)
> at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
> at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
> at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:140)
> at org.apache.catalina.core.ContainerBase.stopInternal(ContainerBase.java:999)
> at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
> at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1443)
> at org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1432)
> at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
> at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
> at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:140)
> at org.apache.catalina.core.ContainerBase.stopInternal(ContainerBase.java:999)
> at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
> at org.apache.catalina.core.StandardService.stopInternal(StandardService.java:471)
> at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
> at org.apache.catalina.core.StandardServer.stopInternal(StandardServer.java:791)
> at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
> at org.apache.catalina.startup.Catalina.stop(Catalina.java:755)
> at org.apache.catalina.startup.Catalina.start(Catalina.java:717)
> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.base/java.lang.reflect.Method.invoke(Method.java:566)
> at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:353)
> at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:493)
> Caused by: java.util.concurrent.CompletionException: org.infinispan.commons.CacheException: org.infinispan.IllegalLifecycleStateException: Cache container has been stopped and cannot be reused. Recreate the cache container.
> at org.infinispan.util.concurrent.CompletionStages.join(CompletionStages.java:68)
> at org.infinispan.notifications.Listenable.removeListener(Listenable.java:43)
> at org.infinispan.cache.impl.AbstractDelegatingCache.removeListener(AbstractDelegatingCache.java:561)
> at org.infinispan.counter.impl.listener.CounterManagerNotificationManager.stop(CounterManagerNotificationManager.java:130)
> at org.infinispan.counter.impl.manager.EmbeddedCounterManager.stop(EmbeddedCounterManager.java:101)
> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.base/java.lang.reflect.Method.invoke(Method.java:566)
> at org.infinispan.commons.util.SecurityActions.lambda$invokeAccessibly$0(SecurityActions.java:79)
> ... 40 more
> Caused by: org.infinispan.commons.CacheException: org.infinispan.IllegalLifecycleStateException: Cache container has been stopped and cannot be reused. Recreate the cache container.
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl.lambda$removeListenerAsync$16(CacheNotifierImpl.java:2039)
> at org.infinispan.manager.impl.LocalClusterExecutor.lambda$submitConsumer$3(LocalClusterExecutor.java:78)
> at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:859)
> at java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:837)
> at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:506)
> at java.base/java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2088)
> at org.infinispan.manager.impl.LocalClusterExecutor.lambda$localInvocation$6(LocalClusterExecutor.java:97)
> at org.infinispan.util.concurrent.BlockingTaskAwareExecutorServiceImpl$RunnableWrapper.run(BlockingTaskAwareExecutorServiceImpl.java:212)
> at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
> at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
> at java.base/java.lang.Thread.run(Thread.java:834)
> Caused by: org.infinispan.IllegalLifecycleStateException: Cache container has been stopped and cannot be reused. Recreate the cache container.
> at org.infinispan.manager.DefaultCacheManager.assertIsNotTerminated(DefaultCacheManager.java:1023)
> at org.infinispan.manager.DefaultCacheManager.internalGetCache(DefaultCacheManager.java:474)
> at org.infinispan.manager.DefaultCacheManager.getCache(DefaultCacheManager.java:470)
> at org.infinispan.manager.DefaultCacheManager.getCache(DefaultCacheManager.java:456)
> at org.infinispan.manager.impl.AbstractDelegatingEmbeddedCacheManager.getCache(AbstractDelegatingEmbeddedCacheManager.java:188)
> at org.infinispan.manager.impl.UnwrappingEmbeddedCacheManager.getCache(UnwrappingEmbeddedCacheManager.java:25)
> at org.infinispan.notifications.cachelistener.cluster.ClusterListenerRemoveCallable.apply(ClusterListenerRemoveCallable.java:39)
> at org.infinispan.notifications.cachelistener.cluster.ClusterListenerRemoveCallable.apply(ClusterListenerRemoveCallable.java:25)
> at org.infinispan.manager.impl.LocalClusterExecutor.lambda$localInvocation$6(LocalClusterExecutor.java:94)
> ... 4 more
> {code}
--
This message was sent by Atlassian Jira
(v7.13.5#713005)
5 years, 4 months
[JBoss JIRA] (ISPN-10459) HTTP/2: Cleartext upgrades broken
by Tristan Tarrant (Jira)
[ https://issues.jboss.org/browse/ISPN-10459?page=com.atlassian.jira.plugin... ]
Tristan Tarrant updated ISPN-10459:
-----------------------------------
Status: Resolved (was: Pull Request Sent)
Fix Version/s: 10.0.0.CR2
Resolution: Done
> HTTP/2: Cleartext upgrades broken
> ---------------------------------
>
> Key: ISPN-10459
> URL: https://issues.jboss.org/browse/ISPN-10459
> Project: Infinispan
> Issue Type: Bug
> Components: REST
> Affects Versions: 10.0.0.Beta5
> Reporter: Gustavo Lira e Silva
> Assignee: Gustavo Fernandes
> Priority: Major
> Labels: http2
> Fix For: 10.0.0.CR2
>
>
> Rest requests with HTTP/2 is not working. The following exception is being throw when using ISPN master branch running with Wildfly:
> {noformat}
> 18:44:56,152 ERROR [org.infinispan.rest.Http20RequestHandler] (REST-ServerIO-6-1) ISPN012006: Uncaught exception in the pipeline: java.lang.IllegalArgumentException: No enum constant org.infinispan.rest.framework.Method.PRI
> at java.base/java.lang.Enum.valueOf(Enum.java:240)
> at org.infinispan.server.rest:ispn-10.0@10.0.0-SNAPSHOT//org.infinispan.rest.framework.Method.valueOf(Method.java:6)
> at org.infinispan.server.rest:ispn-10.0@10.0.0-SNAPSHOT//org.infinispan.rest.NettyRestRequest.method(NettyRestRequest.java:69)
> at org.infinispan.server.rest:ispn-10.0@10.0.0-SNAPSHOT//org.infinispan.rest.framework.impl.RestDispatcherImpl.dispatch(RestDispatcherImpl.java:36)
> at org.infinispan.server.rest:ispn-10.0@10.0.0-SNAPSHOT//org.infinispan.rest.Http20RequestHandler.channelRead0(Http20RequestHandler.java:58)
> at org.infinispan.server.rest:ispn-10.0@10.0.0-SNAPSHOT//org.infinispan.rest.Http11RequestHandler.channelRead0(Http11RequestHandler.java:35)
> at org.infinispan.server.rest:ispn-10.0@10.0.0-SNAPSHOT//org.infinispan.rest.Http11RequestHandler.channelRead0(Http11RequestHandler.java:18)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:359)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:345)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:337)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:359)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:345)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:337)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:359)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:345)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:337)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:359)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:345)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:337)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.handler.codec.http.cors.CorsHandler.channelRead(CorsHandler.java:95)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:359)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:345)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:337)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireChannelRead(CombinedChannelDuplexHandler.java:438)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:323)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:426)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:278)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.CombinedChannelDuplexHandler.channelRead(CombinedChannelDuplexHandler.java:253)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:359)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:345)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:337)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86)
> at org.infinispan.server:ispn-10.0@10.0.0-SNAPSHOT//org.infinispan.server.core.transport.StatsChannelHandler.channelRead(StatsChannelHandler.java:26)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:359)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:345)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:337)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1408)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:359)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:345)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:930)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:677)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:612)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:529)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:491)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:905)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
> at java.base/java.lang.Thread.run(Thread.java:834)
> {noformat}
> PRI method will appear to be used when an HTTP/1.1 server or intermediary attempts to parse an HTTP/2 connection preface
> Rest authentication was disabled on standalone.xml and the request was made using
> {code:bash}
> curl -k -v http://localhost:8080/rest/default/1 --http2-prior-knowledge
> {code}
> If I add this value “PRI” into org.infinispan.rest.framework.Method the following exception is throw
> {noformat}
> 18:57:07,836 ERROR [org.infinispan.rest.Http20RequestHandler] (REST-ServerIO-6-1) ISPN012006: Uncaught exception in the pipeline: java.io.IOException: Connection reset by peer
> at java.base/sun.nio.ch.FileDispatcherImpl.read0(Native Method)
> at java.base/sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:39)
> at java.base/sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:276)
> at java.base/sun.nio.ch.IOUtil.read(IOUtil.java:233)
> at java.base/sun.nio.ch.IOUtil.read(IOUtil.java:223)
> at java.base/sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:358)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.buffer.PooledUnsafeDirectByteBuf.setBytes(PooledUnsafeDirectByteBuf.java:288)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.buffer.AbstractByteBuf.writeBytes(AbstractByteBuf.java:1125)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.socket.nio.NioSocketChannel.doReadBytes(NioSocketChannel.java:347)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:148)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:677)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:612)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:529)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:491)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:905)
> at io.netty:ispn-10.0@4.1.34.Final//io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
> at java.base/java.lang.Thread.run(Thread.java:834)
> {noformat}
--
This message was sent by Atlassian Jira
(v7.13.5#713005)
5 years, 4 months
[JBoss JIRA] (ISPN-10487) HTTP/2 POST: Request Entity Too Large
by Tristan Tarrant (Jira)
[ https://issues.jboss.org/browse/ISPN-10487?page=com.atlassian.jira.plugin... ]
Tristan Tarrant updated ISPN-10487:
-----------------------------------
Status: Resolved (was: Pull Request Sent)
Fix Version/s: 10.0.0.CR2
Resolution: Done
> HTTP/2 POST: Request Entity Too Large
> -------------------------------------
>
> Key: ISPN-10487
> URL: https://issues.jboss.org/browse/ISPN-10487
> Project: Infinispan
> Issue Type: Bug
> Components: Server
> Reporter: Gustavo Fernandes
> Assignee: Gustavo Fernandes
> Priority: Major
> Labels: http2
> Fix For: 10.0.0.CR2
>
>
> Start server-ng and create a cache named 'default':
> {noformat}
> curl -v -XPOST -d '{"distributed-cache":{"mode": "SYNC"}}' -H "Content-type: application/json" http://localhost:11222/rest/v2/caches/default
> {noformat}
> Try to put an entry using HTTP/2
> {noformat}
> curl -v -XPOST -d '1' -H "Content-type: application/json" http://localhost:11222/rest/v2/caches/default/1 --http2
> {noformat}
> Error 413 is received:
> {noformat}
> * Trying ::1:11222...
> * TCP_NODELAY set
> * connect to ::1 port 11222 failed: Connection refused
> * Trying 127.0.0.1:11222...
> * TCP_NODELAY set
> * Connected to localhost (127.0.0.1) port 11222 (#0)
> > POST /rest/v2/caches/default/1 HTTP/1.1
> > Host: localhost:11222
> > User-Agent: curl/7.65.3
> > Accept: */*
> > Connection: Upgrade, HTTP2-Settings
> > Upgrade: h2c
> > HTTP2-Settings: AAMAAABkAARAAAAAAAIAAAAA
> > Content-type: application/json
> > Content-Length: 1
> >
> * upload completely sent off: 1 out of 1 bytes
> * Mark bundle as not supporting multiuse
> < HTTP/1.1 413 Request Entity Too Large
> < content-length: 0
> <
> * Connection #0 to host localhost left intact
> {noformat}
> The same command line without http/2 succeeds
--
This message was sent by Atlassian Jira
(v7.13.5#713005)
5 years, 4 months