[JBoss JIRA] (ISPN-5623) Retried prepare commands do not wait for backup locks
by RH Bugzilla Integration (JIRA)
[ https://issues.jboss.org/browse/ISPN-5623?page=com.atlassian.jira.plugin.... ]
RH Bugzilla Integration commented on ISPN-5623:
-----------------------------------------------
Sebastian Łaskawiec <slaskawi(a)redhat.com> changed the Status of [bug 1245500|https://bugzilla.redhat.com/show_bug.cgi?id=1245500] from MODIFIED to ON_QA
> Retried prepare commands do not wait for backup locks
> -----------------------------------------------------
>
> Key: ISPN-5623
> URL: https://issues.jboss.org/browse/ISPN-5623
> Project: Infinispan
> Issue Type: Bug
> Components: Core
> Affects Versions: 7.2.3.Final, 8.0.0.Beta1
> Reporter: Dan Berindei
> Assignee: Pedro Ruivo
> Fix For: 8.1.0.Final
>
> Attachments: OptimisticPrimaryOwnerCrashDuringPrepareTest.java
>
>
> When the primary owner crashes during prepare, the prepare command is retried on the new primary owner. But because the transaction topology id stays the same, the new primary owner does not check for backup locks owned by other transactions from the previous topology.
> That makes it possible for the retried prepare command to lock a key that was already locked by another transaction on the primary owner.
> This wasn't a problem before the ISPN-4546 fix, because a primary owner crash would have forced the transaction to roll back.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 4 months
[JBoss JIRA] (ISPN-5482) JSR-107 - Provide mechanism to handle expiration events
by RH Bugzilla Integration (JIRA)
[ https://issues.jboss.org/browse/ISPN-5482?page=com.atlassian.jira.plugin.... ]
RH Bugzilla Integration commented on ISPN-5482:
-----------------------------------------------
Sebastian Łaskawiec <slaskawi(a)redhat.com> changed the Status of [bug 1222995|https://bugzilla.redhat.com/show_bug.cgi?id=1222995] from MODIFIED to ON_QA
> JSR-107 - Provide mechanism to handle expiration events
> --------------------------------------------------------
>
> Key: ISPN-5482
> URL: https://issues.jboss.org/browse/ISPN-5482
> Project: Infinispan
> Issue Type: Feature Request
> Components: JCache
> Reporter: Matej Čimbora
> Assignee: Gustavo Fernandes
> Fix For: 8.2.0.Alpha1, 8.0.3.Final
>
>
> Currently, expiration events are supported only by embedded mode & additionally require entry to be accessed in order to be created. This can lead to CacheEntryExpiredListener not being notified when an entry expires.
> Note: Not covered by TCK tests.
> Example:
> {code}
> @Test
> public void testExpiration(Method m) {
> Cache<String, String> cache1 = getCache1(m);
> Cache<String, String> cache2 = getCache2(m);
> TestExpiredListener listener = new TestExpiredListener();
> MutableCacheEntryListenerConfiguration conf1 = new MutableCacheEntryListenerConfiguration(FactoryBuilder.factoryOf(listener), null, false, false);
> cache1.registerCacheEntryListener(conf1);
> cache2.put("key1", "val1");
> sleep(5000);
> // Required by embedded JCache implementation to work
> assert cache1.get("key1") == null;
> // Failing for remote JCache implementation
> assertEquals(1, listener.invocationCount);
> }
> private static class TestExpiredListener implements CacheEntryExpiredListener, Serializable {
> private int invocationCount;
> @Override
> public void onExpired(Iterable iterable) throws CacheEntryListenerException {
> Iterator iterator = iterable.iterator();
> while (iterator.hasNext()) {
> iterator.next();
> invocationCount++;
> }
> }
> }
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 4 months
[JBoss JIRA] (ISPN-5948) ClusterListenerDistTxTest.testSimpleExpirationFilterNotOwner and ClusterListenerDistTxTest.testSimpleExpirationConverterNotOwner fail with assertion error
by RH Bugzilla Integration (JIRA)
[ https://issues.jboss.org/browse/ISPN-5948?page=com.atlassian.jira.plugin.... ]
RH Bugzilla Integration commented on ISPN-5948:
-----------------------------------------------
Sebastian Łaskawiec <slaskawi(a)redhat.com> changed the Status of [bug 1289244|https://bugzilla.redhat.com/show_bug.cgi?id=1289244] from MODIFIED to ON_QA
> ClusterListenerDistTxTest.testSimpleExpirationFilterNotOwner and ClusterListenerDistTxTest.testSimpleExpirationConverterNotOwner fail with assertion error
> ----------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: ISPN-5948
> URL: https://issues.jboss.org/browse/ISPN-5948
> Project: Infinispan
> Issue Type: Bug
> Components: Test Suite - Core
> Reporter: Roman Macor
> Assignee: William Burns
> Labels: testsuite_stability
> Fix For: 8.1.0.Final
>
> Attachments: ClusterListenerDistTxTest.log.gz
>
>
> ClusterListenerDistTxTest.testSimpleExpirationFilterNotOwner fails with:
> Error Message
> expected:<MagicKey#null{2ea2ae14@ClusterListenerDistTxTest-NodeDE-7642/40}-expiring> but was:<null>
> Stacktrace
> java.lang.AssertionError: expected:<MagicKey#null{2ea2ae14@ClusterListenerDistTxTest-NodeDE-7642/40}-expiring> but was:<null>
> at org.testng.AssertJUnit.fail(AssertJUnit.java:59)
> at org.testng.AssertJUnit.failNotEquals(AssertJUnit.java:364)
> at org.testng.AssertJUnit.assertEquals(AssertJUnit.java:80)
> at org.testng.AssertJUnit.assertEquals(AssertJUnit.java:88)
> at org.infinispan.notifications.cachelistener.cluster.AbstractClusterListenerUtilTest.verifySimpleExpirationEvents(AbstractClusterListenerUtilTest.java:292)
> at org.infinispan.notifications.cachelistener.cluster.AbstractClusterListenerTest.testExpirationFilter(AbstractClusterListenerTest.java:735)
> at org.infinispan.notifications.cachelistener.cluster.AbstractClusterListenerTest.testSimpleExpirationFilter(AbstractClusterListenerTest.java:705)
> at org.infinispan.notifications.cachelistener.cluster.AbstractClusterListenerTest.testSimpleExpirationFilterNotOwner(AbstractClusterListenerTest.java:692)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:95)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:56)
> at java.lang.reflect.Method.invoke(Method.java:620)
> at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:80)
> at org.testng.internal.Invoker.invokeMethod(Invoker.java:714)
> at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:901)
> at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1231)
> at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127)
> at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111)
> at org.testng.TestRunner.privateRun(TestRunner.java:767)
> at org.testng.TestRunner.run(TestRunner.java:617)
> at org.testng.SuiteRunner.runTest(SuiteRunner.java:334)
> at org.testng.SuiteRunner.access$000(SuiteRunner.java:37)
> at org.testng.SuiteRunner$SuiteWorker.run(SuiteRunner.java:368)
> at org.testng.internal.thread.ThreadUtil$2.call(ThreadUtil.java:64)
> at java.util.concurrent.FutureTask.run(FutureTask.java:274)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1157)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:627)
> at java.lang.Thread.run(Thread.java:809)
> ClusterListenerDistTxTest.testSimpleExpirationConverterNotOwner fails with:
> Error Message
> expected:<fi> but was:<null>
> Stacktrace
> java.lang.AssertionError: expected:<fi> but was:<null>
> at org.testng.AssertJUnit.fail(AssertJUnit.java:59)
> at org.testng.AssertJUnit.failNotEquals(AssertJUnit.java:364)
> at org.testng.AssertJUnit.assertEquals(AssertJUnit.java:80)
> at org.testng.AssertJUnit.assertEquals(AssertJUnit.java:88)
> at org.infinispan.notifications.cachelistener.cluster.AbstractClusterListenerUtilTest.verifySimpleExpirationEvents(AbstractClusterListenerUtilTest.java:292)
> at org.infinispan.notifications.cachelistener.cluster.AbstractClusterListenerTest.testExpirationConverter(AbstractClusterListenerTest.java:767)
> at org.infinispan.notifications.cachelistener.cluster.AbstractClusterListenerTest.testSimpleExpirationConverterNotOwner(AbstractClusterListenerTest.java:742)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:95)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:56)
> at java.lang.reflect.Method.invoke(Method.java:620)
> at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:80)
> at org.testng.internal.Invoker.invokeMethod(Invoker.java:714)
> at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:901)
> at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1231)
> at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127)
> at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111)
> at org.testng.TestRunner.privateRun(TestRunner.java:767)
> at org.testng.TestRunner.run(TestRunner.java:617)
> at org.testng.SuiteRunner.runTest(SuiteRunner.java:334)
> at org.testng.SuiteRunner.access$000(SuiteRunner.java:37)
> at org.testng.SuiteRunner$SuiteWorker.run(SuiteRunner.java:368)
> at org.testng.internal.thread.ThreadUtil$2.call(ThreadUtil.java:64)
> at java.util.concurrent.FutureTask.run(FutureTask.java:274)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1157)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:627)
> at java.lang.Thread.run(Thread.java:809)
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 4 months
[JBoss JIRA] (ISPN-5981) Compatibility mode: HotRod client sends request to wrong owner
by RH Bugzilla Integration (JIRA)
[ https://issues.jboss.org/browse/ISPN-5981?page=com.atlassian.jira.plugin.... ]
RH Bugzilla Integration commented on ISPN-5981:
-----------------------------------------------
Sebastian Łaskawiec <slaskawi(a)redhat.com> changed the Status of [bug 1285381|https://bugzilla.redhat.com/show_bug.cgi?id=1285381] from MODIFIED to ON_QA
> Compatibility mode: HotRod client sends request to wrong owner
> --------------------------------------------------------------
>
> Key: ISPN-5981
> URL: https://issues.jboss.org/browse/ISPN-5981
> Project: Infinispan
> Issue Type: Bug
> Components: Remote Protocols
> Affects Versions: 8.0.1.Final, 8.1.0.Beta1
> Reporter: Dan Berindei
> Assignee: Galder Zamarreño
> Fix For: 8.2.0.Alpha1, 8.2.0.Final
>
> Attachments: GetAllCompatDistTest.java
>
>
> The HotRod client computes the hash on the serialized key, i.e. {{MurmurHash3.hash(obj2bytes(key))}}, but the server decides the entry location based on the unmarshalled key, i.e. {{MurmurHash3.hash(key.hashCode())}}.
> I've modified {{GetAllCompatDistTest}} (attached) to test if there are any {{ClusteredGetCommand}}s being sent for {{RemoteCache.get(key)}} operations, and it finds quite a few:
> {noformat}
> java.lang.AssertionError: expected:<100> but was:<147>
> at org.testng.AssertJUnit.fail(AssertJUnit.java:59) ~[testng-6.8.8.jar:?]
> at org.testng.AssertJUnit.failNotEquals(AssertJUnit.java:364) ~[testng-6.8.8.jar:?]
> at org.testng.AssertJUnit.assertEquals(AssertJUnit.java:80) ~[testng-6.8.8.jar:?]
> at org.testng.AssertJUnit.assertEquals(AssertJUnit.java:245) ~[testng-6.8.8.jar:?]
> at org.testng.AssertJUnit.assertEquals(AssertJUnit.java:252) ~[testng-6.8.8.jar:?]
> at org.infinispan.client.hotrod.GetAllCompatDistTest.testGetWithCompatibility(GetAllCompatDistTest.java:57) ~[test-classes/:?]
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 4 months