[Red Hat JIRA] (ISPN-11565) Handle Unauthorized actions in the console
by Katia Aresti (Jira)
[ https://issues.redhat.com/browse/ISPN-11565?page=com.atlassian.jira.plugi... ]
Katia Aresti resolved ISPN-11565.
---------------------------------
Fix Version/s: 12.0.0.Final
(was: 12.1.0.Final)
Resolution: Done
> Handle Unauthorized actions in the console
> ------------------------------------------
>
> Key: ISPN-11565
> URL: https://issues.redhat.com/browse/ISPN-11565
> Project: Infinispan
> Issue Type: Feature Request
> Components: Console
> Affects Versions: 10.1.5.Final
> Reporter: Katia Aresti
> Assignee: Katia Aresti
> Priority: Major
> Labels: console
> Fix For: 12.0.0.Final
>
>
> When the user is not authorized to perfom some actions, an error should be displayed.
> The first quick version should just display the errors in the console. Authz based console should be implemented
--
This message was sent by Atlassian Jira
(v8.13.1#813001)
3 years, 10 months
[Red Hat JIRA] (ISPN-12679) AsyncBackupExpirationTest.testExpiredAccess random failures
by Dan Berindei (Jira)
Dan Berindei created ISPN-12679:
-----------------------------------
Summary: AsyncBackupExpirationTest.testExpiredAccess random failures
Key: ISPN-12679
URL: https://issues.redhat.com/browse/ISPN-12679
Project: Infinispan
Issue Type: Bug
Components: Core, Cross-Site Replication, Expiration, Test Suite
Affects Versions: 12.0.0.Final
Reporter: Dan Berindei
Fix For: 12.1.0.Final
Sometimes the backup {{IracPutKeyValueCommand}} is delayed on NodeD and it stores the value only after the test advanced the time service and invokes the get operation that's supposed to expire the entry, causing the entry expiration to fail in the {{NYC}} site.
First {{IracPutKeyValueCommand}} arrives at NodeD and locks the key:
{noformat}
15:59:07,907 TRACE (jgroups-7,Test-NodeB:[]) [InvocationContextInterceptor] Invoked with command PrepareCommand {modifications=[PutKeyValueCommand{key=MagicKey{7FD/E1260FE1/147@Test-NodeB}, value=v, flags=[], commandInvocationId=CommandInvocation:local:0, ...
15:59:07,910 TRACE (jgroups-5,bridge-org.infinispan.xsite.Test,_Test-NodeC:NYC-2:[]) [InvocationContextInterceptor] Invoked with command IracPutKeyValueCommand{key=MagicKey{7FD/E1260FE1/147@Test-NodeB}, value=v, metadata=EmbeddedLifespanExpirableMetadata{lifespan=1000, version=null}, privateMetadata=PrivateMetadata{iracMetadata=IracMetadata{site='LON-1', version=(LON-1=(6:1))}, entryVersion=null}, successful=true, commandInvocationId=CommandInvocation:Test-NodeC:45679} and InvocationContext [SingleKeyNonTxInvocationContext{isLocked=false, key=null, cacheEntry=null, origin=null, lockOwner=CommandInvocation:Test-NodeC:45679}]
15:59:07,912 TRACE (jgroups-8,Test-NodeD:[]) [InvocationContextInterceptor] Invoked with command IracPutKeyValueCommand{key=MagicKey{7FD/E1260FE1/147@Test-NodeB}, value=v, metadata=EmbeddedLifespanExpirableMetadata{lifespan=1000, version=null}, privateMetadata=PrivateMetadata{iracMetadata=IracMetadata{site='LON-1', version=(LON-1=(6:1))}, entryVersion=null}, successful=true, commandInvocationId=CommandInvocation:Test-NodeC:45679} and InvocationContext [SingleKeyNonTxInvocationContext{isLocked=false, key=null, cacheEntry=null, origin=Test-NodeC, lockOwner=CommandInvocation:Test-NodeC:45679}]
15:59:07,912 TRACE (jgroups-8,Test-NodeD:[]) [DefaultLockManager] Lock key=MagicKey{7FD/E1260FE1/147@Test-NodeB} for owner=CommandInvocation:Test-NodeC:45679. timeout=10000 (MILLISECONDS)
15:59:07,912 TRACE (jgroups-8,Test-NodeD:[]) [InfinispanLock] LockPlaceHolder{lockState=ACQUIRED, owner=CommandInvocation:Test-NodeC:45679} successfully acquired the lock.
{noformat}
Then {{RemoteExpiredCommand}} arrives at NodeD, tries to lock the key, and fails:
{noformat}
15:59:07,917 TRACE (testng-Test:[]) [InvocationContextInterceptor] Invoked with command RemoveExpiredCommand{key=MagicKey{7FD/E1260FE1/147@Test-NodeB}, value=v, lifespan=1000, maxIde=false, internalMetadata=null} and InvocationContext [SingleKeyNonTxInvocationContext{isLocked=false, key=null, cacheEntry=null, origin=null, lockOwner=CommandInvocation:local:0}]
15:59:07,918 TRACE (jgroups-7,Test-NodeD:[]) [InvocationContextInterceptor] Invoked with command RemoveExpiredCommand{key=MagicKey{7FD/E1260FE1/147@Test-NodeB}, value=v, lifespan=1000, maxIde=false, internalMetadata=null} and InvocationContext [SingleKeyNonTxInvocationContext{isLocked=false, key=null, cacheEntry=null, origin=Test-NodeC, lockOwner=CommandInvocation:local:0}]
15:59:07,918 TRACE (jgroups-7,Test-NodeD:[]) [DefaultLockManager] Lock key=MagicKey{7FD/E1260FE1/147@Test-NodeB} for owner=CommandInvocation:local:0. timeout=0 (MILLISECONDS)
15:59:07,918 TRACE (jgroups-7,Test-NodeD:[]) [InfinispanLock] Unable to acquire. Lock is held.
{noformat}
Next {{IracPutKeyValueCommand}} stores the value and releases the lock:
{noformat}
15:59:07,919 TRACE (jgroups-8,Test-NodeD:[]) [AbstractInternalDataContainer] Store MagicKey{7FD/E1260FE1/147@Test-NodeB}=MortalCacheEntry{key=MagicKey{7FD/E1260FE1/147@Test-NodeB}, value=v, internalMetadata=PrivateMetadata{iracMetadata=IracMetadata{site='LON-1', version=(LON-1=(6:1))}, entryVersion=null}, created=1002000, lifespan=1000} in container
15:59:07,919 TRACE (jgroups-8,Test-NodeD:[]) [DefaultLockManager] Release locks for keys=[MagicKey{7FD/E1260FE1/147@Test-NodeB}]. owner=CommandInvocation:Test-NodeC:45679
{noformat}
But it's too late for the {{RemoveExpiredCommand}}, which gives up:
{noformat}
15:59:07,920 ERROR (jgroups-7,Test-NodeD:[]) [InvocationContextInterceptor] ISPN000136: Error executing command RemoveExpiredCommand on Cache 'defaultcache', writing keys [MagicKey{7FD/E1260FE1/147@Test-NodeB}]
org.infinispan.util.concurrent.TimeoutException: ISPN000299: Unable to acquire lock after 0 milliseconds for key MagicKey{7FD/E1260FE1/147@Test-NodeB} and requestor CommandInvocation:local:0. Lock is held by null
at org.infinispan.util.concurrent.locks.impl.DefaultLockManager$KeyAwareExtendedLockPromise.get(DefaultLockManager.java:291) ~[classes/:?]
at org.infinispan.util.concurrent.locks.impl.DefaultLockManager$KeyAwareExtendedLockPromise.get(DefaultLockManager.java:221) ~[classes/:?]
at org.infinispan.util.concurrent.locks.impl.InfinispanLock$LockPlaceHolder.checkState(InfinispanLock.java:439) ~[classes/:?]
at org.infinispan.util.concurrent.locks.impl.InfinispanLock$LockPlaceHolder.toInvocationStage(InfinispanLock.java:411) ~[classes/:?]
at org.infinispan.util.concurrent.locks.impl.DefaultLockManager$KeyAwareExtendedLockPromise.toInvocationStage(DefaultLockManager.java:251) ~[classes/:?]
at org.infinispan.util.concurrent.locks.impl.DefaultLockManager$KeyAwareExtendedLockPromise.toInvocationStage(DefaultLockManager.java:275) ~[classes/:?]
at org.infinispan.interceptors.locking.AbstractLockingInterceptor.lockAndRecord(AbstractLockingInterceptor.java:287) ~[classes/:?]
at org.infinispan.interceptors.locking.AbstractLockingInterceptor.visitNonTxDataWriteCommand(AbstractLockingInterceptor.java:137) ~[classes/:?]
at org.infinispan.interceptors.locking.AbstractLockingInterceptor.visitRemoveExpiredCommand(AbstractLockingInterceptor.java:107) ~[classes/:?]
at org.infinispan.commands.write.RemoveExpiredCommand.acceptVisitor(RemoveExpiredCommand.java:46) ~[classes/:?]
at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNext(BaseAsyncInterceptor.java:59) ~[classes/:?]
at org.infinispan.interceptors.impl.TxInterceptor.visitRemoveExpiredCommand(TxInterceptor.java:238) ~[classes/:?]
15:59:07,926 TRACE (jgroups-7,Test-NodeD:[]) [CallInterceptor] Cannot remove entry due to it not being expired - this can be caused by different clocks on nodes or a concurrent write
15:59:07,926 TRACE (jgroups-7,Test-NodeD:[]) [BaseDistributionInterceptor] Skipping the replication of the conditional command as it did not succeed on primary owner (RemoveExpiredCommand{key=MagicKey{7FD/E1260FE1/147@Test-NodeB}, value=v, lifespan=1000, maxIde=false, internalMetadata=null}).
{noformat}
And because the entry was not expired, the test fails:
{noformat}
15:59:07,929 ERROR (testng-Test:[]) [TestSuiteProgress] Test failed: org.infinispan.xsite.AsyncBackupExpirationTest.testExpiredAccess[LON=PESSIMISTIC_TX, NYC=OPTIMISTIC_TX_RC]([true, false])
java.lang.AssertionError:
at org.testng.AssertJUnit.fail(AssertJUnit.java:59) ~[testng-6.14.3.jar:?]
at org.testng.AssertJUnit.assertTrue(AssertJUnit.java:24) ~[testng-6.14.3.jar:?]
at org.testng.AssertJUnit.assertNull(AssertJUnit.java:282) ~[testng-6.14.3.jar:?]
at org.testng.AssertJUnit.assertNull(AssertJUnit.java:274) ~[testng-6.14.3.jar:?]
at org.infinispan.xsite.AsyncBackupExpirationTest.testExpiredAccess(AsyncBackupExpirationTest.java:182) ~[test-classes/:?]
{noformat}
I believe this can happen in production code just as in the test, if the entry lifespan was shorter.
So we shouldn't just add a delay in the test, we should make the {{RemoveExpiredCommand}} wait for the {{IracPutKeyValueCommand}} to finish writing the value and release the lock.
--
This message was sent by Atlassian Jira
(v8.13.1#813001)
3 years, 10 months
[Red Hat JIRA] (ISPN-12657) Cross-Site automatic state transfer
by Pedro Ruivo (Jira)
[ https://issues.redhat.com/browse/ISPN-12657?page=com.atlassian.jira.plugi... ]
Pedro Ruivo updated ISPN-12657:
-------------------------------
Sprint: DataGrid Sprint #56
> Cross-Site automatic state transfer
> -----------------------------------
>
> Key: ISPN-12657
> URL: https://issues.redhat.com/browse/ISPN-12657
> Project: Infinispan
> Issue Type: Feature Request
> Components: Cross-Site Replication
> Reporter: Pedro Ruivo
> Assignee: Pedro Ruivo
> Priority: Major
> Fix For: 12.1.0.Final
>
>
> With conflict resolution enable for IRAC state transfer, is now possible to achieve automatic state transfer for it.
> It needs a new toggle in the configuration & a runtime toggle well. Users may want to disable at runtime while performing some maintenance (for example).
> Events from JGroups (site up event) will be the trigger.
> Note: it only affects asynchronous strategy.
--
This message was sent by Atlassian Jira
(v8.13.1#813001)
3 years, 10 months
[Red Hat JIRA] (ISPN-12678) infinispan 6.0.2 升级到9.4.21 后无法query
by Yuemei Qiu (Jira)
[ https://issues.redhat.com/browse/ISPN-12678?page=com.atlassian.jira.plugi... ]
Yuemei Qiu updated ISPN-12678:
------------------------------
Affects Version/s: 9.4.21.Final
> infinispan 6.0.2 升级到9.4.21 后无法query
> -----------------------------------
>
> Key: ISPN-12678
> URL: https://issues.redhat.com/browse/ISPN-12678
> Project: Infinispan
> Issue Type: Component Upgrade
> Affects Versions: 9.4.21.Final
> Reporter: Yuemei Qiu
> Priority: Major
>
> org.infinispan.commons.CacheException: ISPN014038: infinispan-query.jar module is in the classpath but has not been properly initialised!
> at org.infinispan.query.Search.getQueryFactory(Search.java:74)
> at com.citi.gravity.saas.persister.processor.QuerySkynetMessageProcessor.process(QuerySkynetMessageProcessor.java:57)
> at org.apache.camel.impl.ProcessorEndpoint.onExchange(ProcessorEndpoint.java:103)
> at org.apache.camel.impl.ProcessorEndpoint$1.process(ProcessorEndpoint.java:71)
> at org.apache.camel.util.AsyncProcessorConverterHelper$ProcessorToAsyncProcessorBridge.process(AsyncProcessorConverterHelper.java:61)
> at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:148)
> at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:548)
> at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:201)
> at org.apache.camel.processor.Pipeline.process(Pipeline.java:138)
> at org.apache.camel.processor.Pipeline.process(Pipeline.java:101)
> at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:201)
> at org.apache.camel.component.seda.SedaConsumer.sendToConsumers(SedaConsumer.java:298)
> at org.apache.camel.component.seda.SedaConsumer.doRun(SedaConsumer.java:210)
> at org.apache.camel.component.seda.SedaConsumer.run(SedaConsumer.java:155)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> at java.lang.Thread.run(Thread.java:745)
>
>
--
This message was sent by Atlassian Jira
(v8.13.1#813001)
3 years, 10 months
[Red Hat JIRA] (ISPN-12678) infinispan 6.0.2 升级到9.4.21 后无法query
by Yuemei Qiu (Jira)
[ https://issues.redhat.com/browse/ISPN-12678?page=com.atlassian.jira.plugi... ]
Yuemei Qiu updated ISPN-12678:
------------------------------
Description:
org.infinispan.commons.CacheException: ISPN014038: infinispan-query.jar module is in the classpath but has not been properly initialised!
at org.infinispan.query.Search.getQueryFactory(Search.java:74)
at com.citi.gravity.saas.persister.processor.QuerySkynetMessageProcessor.process(QuerySkynetMessageProcessor.java:57)
at org.apache.camel.impl.ProcessorEndpoint.onExchange(ProcessorEndpoint.java:103)
at org.apache.camel.impl.ProcessorEndpoint$1.process(ProcessorEndpoint.java:71)
at org.apache.camel.util.AsyncProcessorConverterHelper$ProcessorToAsyncProcessorBridge.process(AsyncProcessorConverterHelper.java:61)
at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:148)
at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:548)
at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:201)
at org.apache.camel.processor.Pipeline.process(Pipeline.java:138)
at org.apache.camel.processor.Pipeline.process(Pipeline.java:101)
at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:201)
at org.apache.camel.component.seda.SedaConsumer.sendToConsumers(SedaConsumer.java:298)
at org.apache.camel.component.seda.SedaConsumer.doRun(SedaConsumer.java:210)
at org.apache.camel.component.seda.SedaConsumer.run(SedaConsumer.java:155)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
> infinispan 6.0.2 升级到9.4.21 后无法query
> -----------------------------------
>
> Key: ISPN-12678
> URL: https://issues.redhat.com/browse/ISPN-12678
> Project: Infinispan
> Issue Type: Component Upgrade
> Reporter: Yuemei Qiu
> Priority: Major
>
> org.infinispan.commons.CacheException: ISPN014038: infinispan-query.jar module is in the classpath but has not been properly initialised!
> at org.infinispan.query.Search.getQueryFactory(Search.java:74)
> at com.citi.gravity.saas.persister.processor.QuerySkynetMessageProcessor.process(QuerySkynetMessageProcessor.java:57)
> at org.apache.camel.impl.ProcessorEndpoint.onExchange(ProcessorEndpoint.java:103)
> at org.apache.camel.impl.ProcessorEndpoint$1.process(ProcessorEndpoint.java:71)
> at org.apache.camel.util.AsyncProcessorConverterHelper$ProcessorToAsyncProcessorBridge.process(AsyncProcessorConverterHelper.java:61)
> at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:148)
> at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:548)
> at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:201)
> at org.apache.camel.processor.Pipeline.process(Pipeline.java:138)
> at org.apache.camel.processor.Pipeline.process(Pipeline.java:101)
> at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:201)
> at org.apache.camel.component.seda.SedaConsumer.sendToConsumers(SedaConsumer.java:298)
> at org.apache.camel.component.seda.SedaConsumer.doRun(SedaConsumer.java:210)
> at org.apache.camel.component.seda.SedaConsumer.run(SedaConsumer.java:155)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> at java.lang.Thread.run(Thread.java:745)
>
>
--
This message was sent by Atlassian Jira
(v8.13.1#813001)
3 years, 10 months