[JBoss JIRA] (ISPN-6094) Use security actions to read system properties for configuration
by Tristan Tarrant (JIRA)
[ https://issues.jboss.org/browse/ISPN-6094?page=com.atlassian.jira.plugin.... ]
Tristan Tarrant updated ISPN-6094:
----------------------------------
Fix Version/s: 9.3.0.Final
(was: 9.2.0.Final)
> Use security actions to read system properties for configuration
> ----------------------------------------------------------------
>
> Key: ISPN-6094
> URL: https://issues.jboss.org/browse/ISPN-6094
> Project: Infinispan
> Issue Type: Task
> Components: Core, Embedded Querying
> Affects Versions: 8.1.0.Final
> Reporter: Dan Berindei
> Assignee: Dan Berindei
> Fix For: 9.3.0.Final
>
>
> Infinispan uses system properties for out-of-band settings that weren't deemed important enough to have a proper configuration attribute:
> * infinispan.arrays.debug
> * infinispan.unsafe.force_multicast
> * infinispan.compat (obsolete?)
> * infinispan.debugDependencies
> * infinispan.stagger.delay (introduced with ISPN-825)
> * org.infinispan.query.indexmanager.LockAcquiringBackend.MAX_QUEUE_SIZE
> We should use a {{SecurityActions}} class to access these properties instead of {{Boolean.getBoolean()}} and {{Integer.getInteger()}}. We should also document these system properties, and evaluate moving them to the proper configuration.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 10 months
[JBoss JIRA] (ISPN-6336) NonIndexedClusteredDummyInMemoryStoreQueryDslConditionsTest random failures
by Tristan Tarrant (JIRA)
[ https://issues.jboss.org/browse/ISPN-6336?page=com.atlassian.jira.plugin.... ]
Tristan Tarrant updated ISPN-6336:
----------------------------------
Fix Version/s: 9.3.0.Final
(was: 9.2.0.Final)
> NonIndexedClusteredDummyInMemoryStoreQueryDslConditionsTest random failures
> ---------------------------------------------------------------------------
>
> Key: ISPN-6336
> URL: https://issues.jboss.org/browse/ISPN-6336
> Project: Infinispan
> Issue Type: Bug
> Reporter: Gustavo Fernandes
> Assignee: Adrian Nistor
> Labels: testsuite_stability
> Fix For: 9.3.0.Final
>
>
> Picked this failure when running the query testsuite in loop. It's somehow hard to reproduce.
> The presence of the Byteman test runner in the stacktrace looks suspicious, since it is not supposed to run this test.
> {code}
> Tests run: 2907, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 51.21 sec <<< FAILURE! - in TestSuite
> testSampleDomainQuery16(org.infinispan.query.dsl.embedded.NonIndexedClusteredDummyInMemoryStoreQueryDslConditionsTest) Time elapsed: 0.01 sec <<< FAILURE!
> java.lang.AssertionError: expected:<50> but was:<0>
> at org.junit.Assert.fail(Assert.java:88)
> at org.junit.Assert.failNotEquals(Assert.java:743)
> at org.junit.Assert.assertEquals(Assert.java:118)
> at org.junit.Assert.assertEquals(Assert.java:555)
> at org.junit.Assert.assertEquals(Assert.java:542)
> at org.infinispan.query.dsl.embedded.QueryDslConditionsTest.testSampleDomainQuery16(QueryDslConditionsTest.java:1366)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:497)
> at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:84)
> at org.testng.internal.MethodInvocationHelper$1.runTestMethod(MethodInvocationHelper.java:200)
> at org.jboss.byteman.contrib.bmunit.BMNGAbstractRunner.run(BMNGAbstractRunner.java:58)
> at sun.reflect.GeneratedMethodAccessor72.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:497)
> at org.testng.internal.MethodInvocationHelper.invokeHookable(MethodInvocationHelper.java:212)
> at org.testng.internal.Invoker.invokeMethod(Invoker.java:707)
> 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:348)
> at org.testng.SuiteRunner.access$000(SuiteRunner.java:38)
> at org.testng.SuiteRunner$SuiteWorker.run(SuiteRunner.java:382)
> at org.testng.internal.thread.ThreadUtil$2.call(ThreadUtil.java:64)
> at java.util.concurrent.FutureTask.run(FutureTask.java:266)
> 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)
> {code}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 10 months
[JBoss JIRA] (ISPN-6279) Refactor CacheLoader API to make it thread safe
by Tristan Tarrant (JIRA)
[ https://issues.jboss.org/browse/ISPN-6279?page=com.atlassian.jira.plugin.... ]
Tristan Tarrant updated ISPN-6279:
----------------------------------
Fix Version/s: 9.3.0.Final
(was: 9.2.0.Final)
> Refactor CacheLoader API to make it thread safe
> -----------------------------------------------
>
> Key: ISPN-6279
> URL: https://issues.jboss.org/browse/ISPN-6279
> Project: Infinispan
> Issue Type: Feature Request
> Components: Loaders and Stores
> Reporter: Sebastian Łaskawiec
> Priority: Minor
> Fix For: 9.3.0.Final
>
>
> h3. Introduction
> Currently {{CacheLoader}} thread safety can be easily compromised by broken implementations. We should provide a better implementation to make it more convenient and less error prone.
> h3. Problem statement
> CacheLoader API looks like this:
> {code}
> public interface AdvancedCacheLoader<K, V> extends CacheLoader<K, V> {
> ...
> void process(KeyFilter<? super K> filter, CacheLoaderTask<K, V> task, Executor executor, boolean fetchValue, boolean fetchMetadata);
> ...
> }
> {code}
> The CacheLoader implementation controls {{CacheLoaderTask}} as well as the number of threads used for processing (specified by {{Executor}}). If one wants to collect all keys (similarly to [AdvancedCacheLoader|https://github.com/infinispan/infinispan/blob/master/...]) it is very easy to hit concurrently issues while adding them to the set (See previous JIRAs: ISPN-3938 and ISPN-6276).
> h3. Solution
> The solution should take away currently control (Executor) and keyset (the simplest idea is to add it to {{CacheLoaderTask}}) from from the implementation. One of the ideas is to create a Lambda expression for pulling records from Cache Store. Note that similar changes will need to be performed to {{CacheWriter}} (to make it similar).
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 10 months