[JBoss JIRA] (ISPN-5993) ClassCastException in ProtobufMetadataManagerInterceptor for clear
by Adrian Nistor (JIRA)
[ https://issues.jboss.org/browse/ISPN-5993?page=com.atlassian.jira.plugin.... ]
Adrian Nistor updated ISPN-5993:
--------------------------------
Fix Version/s: 8.2.0.Alpha1
(was: 8.1.0.Final)
> ClassCastException in ProtobufMetadataManagerInterceptor for clear
> ------------------------------------------------------------------
>
> Key: ISPN-5993
> URL: https://issues.jboss.org/browse/ISPN-5993
> Project: Infinispan
> Issue Type: Bug
> Components: Server
> Affects Versions: 8.1.0.CR1
> Reporter: Dan Berindei
> Assignee: Adrian Nistor
> Priority: Minor
> Fix For: 8.2.0.Alpha1
>
>
> When handling a {{ClearCommand}}, {{ProtobufMetadataManagerInterceptor}} tries to lock the {{.errors}} key explicitly, but because the clear operation now ignores transactions, the invocation context is not transactional, and the lock fails.
> Normally the protobuf cache should never be cleared, but it does happen when the test suite clears the caches between methods:
> {noformat}
> 12:33:30,174 ERROR (testng-SecureServerFailureRetryTest:) [InvocationContextInterceptor] ISPN000136: Error executing command ClearCommand, writing keys []
> java.lang.ClassCastException: org.infinispan.context.impl.ClearInvocationContext cannot be cast to org.infinispan.context.impl.TxInvocationContext
> at org.infinispan.commands.control.LockControlCommand.acceptVisitor(LockControlCommand.java:110) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.interceptors.InterceptorChain.invoke(InterceptorChain.java:336) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.query.remote.impl.ProtobufMetadataManagerInterceptor.visitClearCommand(ProtobufMetadataManagerInterceptor.java:406) ~[infinispan-remote-query-server-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.commands.write.ClearCommand.acceptVisitor(ClearCommand.java:41) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:99) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.interceptors.locking.AbstractLockingInterceptor.visitClearCommand(AbstractLockingInterceptor.java:56) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.commands.write.ClearCommand.acceptVisitor(ClearCommand.java:41) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:99) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:113) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.commands.AbstractVisitor.visitClearCommand(AbstractVisitor.java:58) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.commands.write.ClearCommand.acceptVisitor(ClearCommand.java:41) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:99) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.interceptors.TxInterceptor.visitClearCommand(TxInterceptor.java:240) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.commands.write.ClearCommand.acceptVisitor(ClearCommand.java:41) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:99) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:113) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.commands.AbstractVisitor.visitClearCommand(AbstractVisitor.java:58) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.commands.write.ClearCommand.acceptVisitor(ClearCommand.java:41) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:99) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.statetransfer.StateTransferInterceptor.handleNonTxWriteCommand(StateTransferInterceptor.java:356) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.statetransfer.StateTransferInterceptor.handleWriteCommand(StateTransferInterceptor.java:288) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.statetransfer.StateTransferInterceptor.visitClearCommand(StateTransferInterceptor.java:133) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.commands.write.ClearCommand.acceptVisitor(ClearCommand.java:41) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:99) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:113) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.commands.AbstractVisitor.visitClearCommand(AbstractVisitor.java:58) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.commands.write.ClearCommand.acceptVisitor(ClearCommand.java:41) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:99) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:113) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.commands.AbstractVisitor.visitClearCommand(AbstractVisitor.java:58) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.commands.write.ClearCommand.acceptVisitor(ClearCommand.java:41) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:99) ~[infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:107) [infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.interceptors.InvocationContextInterceptor.handleDefault(InvocationContextInterceptor.java:76) [infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.commands.AbstractVisitor.visitClearCommand(AbstractVisitor.java:58) [infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.commands.write.ClearCommand.acceptVisitor(ClearCommand.java:41) [infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:99) [infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.interceptors.BatchingInterceptor.handleDefault(BatchingInterceptor.java:66) [infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.commands.AbstractVisitor.visitClearCommand(AbstractVisitor.java:58) [infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.commands.write.ClearCommand.acceptVisitor(ClearCommand.java:41) [infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.interceptors.InterceptorChain.invoke(InterceptorChain.java:336) [infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.cache.impl.CacheImpl.clear(CacheImpl.java:588) [infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.cache.impl.CacheImpl.clear(CacheImpl.java:579) [infinispan-core-8.1.0-SNAPSHOT.jar:8.1.0-SNAPSHOT]
> at org.infinispan.test.TestingUtil.killCaches(TestingUtil.java:796) [infinispan-core-8.1.0-SNAPSHOT-tests.jar:8.1.0-SNAPSHOT]
> at org.infinispan.test.TestingUtil.killCacheManagers(TestingUtil.java:634) [infinispan-core-8.1.0-SNAPSHOT-tests.jar:8.1.0-SNAPSHOT]
> at org.infinispan.test.MultipleCacheManagersTest.clearContent(MultipleCacheManagersTest.java:101) [infinispan-core-8.1.0-SNAPSHOT-tests.jar:8.1.0-SNAPSHOT]
> at org.infinispan.client.hotrod.retry.AbstractRetryTest.clearContent(AbstractRetryTest.java:99) [test-classes/:?]
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 6 months
[JBoss JIRA] (ISPN-5971) Longer cache name overflows its div in mgmt console
by Adrian Nistor (JIRA)
[ https://issues.jboss.org/browse/ISPN-5971?page=com.atlassian.jira.plugin.... ]
Adrian Nistor updated ISPN-5971:
--------------------------------
Fix Version/s: 8.2.0.Alpha1
(was: 8.1.0.Final)
> Longer cache name overflows its div in mgmt console
> ---------------------------------------------------
>
> Key: ISPN-5971
> URL: https://issues.jboss.org/browse/ISPN-5971
> Project: Infinispan
> Issue Type: Bug
> Components: Console
> Affects Versions: 8.1.0.Beta1
> Reporter: Jiří Holuša
> Assignee: Tristan Tarrant
> Priority: Minor
> Fix For: 8.2.0.Alpha1
>
>
> Page: Caches -> select cache container
> When having cache with a longer name, e.g. replicatedCacheForStatisticsTesting, it overflows its tab. The tabs are probably fixed size. This might be an issue which requires more discussion what is correct solution, if increase the fixed size or make it flexible.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 6 months
[JBoss JIRA] (ISPN-5962) Implementation of RpcManagerImpl.invokeRemotely causes high CPU usage
by Adrian Nistor (JIRA)
[ https://issues.jboss.org/browse/ISPN-5962?page=com.atlassian.jira.plugin.... ]
Adrian Nistor updated ISPN-5962:
--------------------------------
Fix Version/s: 8.2.0.Alpha1
(was: 8.1.0.Final)
> Implementation of RpcManagerImpl.invokeRemotely causes high CPU usage
> ---------------------------------------------------------------------
>
> Key: ISPN-5962
> URL: https://issues.jboss.org/browse/ISPN-5962
> Project: Infinispan
> Issue Type: Enhancement
> Components: Core
> Affects Versions: 8.1.0.Beta1
> Reporter: Sanne Grinovero
> Assignee: Pedro Ruivo
> Fix For: 8.2.0.Alpha1
>
> Attachments: CompletableFutureBenchmarks.java
>
>
> The method {{org.infinispan.remoting.rpc.RpcManagerImpl.invokeRemotely(Collection<Address>, ReplicableCommand, RpcOptions)}} is implemented by blocking on a {{CompletableFuture}}, but this then stalls on {{java.util.concurrent.CompletableFuture.waitingGet(boolean)}} by spending a significant amount of CPU time by spinning.
> When implementing RPC calls and having to wait for remote operations, spinning is probably not a good idea. Could we try implementing this in some way to hint towards a more pessimistic lock?
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 6 months
[JBoss JIRA] (ISPN-6007) Cache.get(...) using Flag.FORCE_WRITE_LOCK should retry on OutdatedTopologyException
by Adrian Nistor (JIRA)
[ https://issues.jboss.org/browse/ISPN-6007?page=com.atlassian.jira.plugin.... ]
Adrian Nistor updated ISPN-6007:
--------------------------------
Fix Version/s: 8.2.0.Alpha1
(was: 8.1.0.Final)
> Cache.get(...) using Flag.FORCE_WRITE_LOCK should retry on OutdatedTopologyException
> ------------------------------------------------------------------------------------
>
> Key: ISPN-6007
> URL: https://issues.jboss.org/browse/ISPN-6007
> Project: Infinispan
> Issue Type: Bug
> Components: Core
> Affects Versions: 8.1.0.CR1, 8.0.2.Final
> Reporter: Paul Ferraro
> Assignee: Dan Berindei
> Fix For: 8.2.0.Alpha1, 8.0.3.Final
>
>
> From IRC:
> pferraro: Following a shutdown of a node, we're seeing OutdatedTopologyExceptions during a Cache.get(...) using Flag.FORCE_WRITE_LOCK when the requested key is not owned by the requesting node
> pferraro: is there a reason why Infinispan doesn't automatically retry here?
> dberindei: I think we just overlooked it
> dberindei: we are retrying a LockControlCommand when you call lock() explicitly
> dberindei: but maybe not when it's invoked for a get()
> pferraro_: is that something that can be fixed easily?
> dberindei: yes, I think so
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 6 months