[JBoss JIRA] (ISPN-5569) NullPointerException on JCache.putAll(ConcurrentHashMap)
by Ryan Emerson (JIRA)
[ https://issues.jboss.org/browse/ISPN-5569?page=com.atlassian.jira.plugin.... ]
Ryan Emerson reassigned ISPN-5569:
----------------------------------
Assignee: Ryan Emerson
> NullPointerException on JCache.putAll(ConcurrentHashMap)
> --------------------------------------------------------
>
> Key: ISPN-5569
> URL: https://issues.jboss.org/browse/ISPN-5569
> Project: Infinispan
> Issue Type: Bug
> Affects Versions: 7.2.2.Final
> Reporter: Michael Gysel
> Assignee: Ryan Emerson
>
> Class {{org.infinispan.jcache.embedded.JCache<K, V>}}
> {code:java}@Override
> public void putAll(Map<? extends K, ? extends V> inputMap) {
> checkNotClosed();
> // spec required check
> if (inputMap == null || inputMap.containsKey(null) || inputMap.containsValue(null)) {
> throw new NullPointerException(
> "inputMap is null or keys/values contain a null entry: " + inputMap);
> }
> // more code
> }
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
9 years, 3 months
[JBoss JIRA] (ISPN-5222) Perform Remote Filtering/Conversion in a single step
by RH Bugzilla Integration (JIRA)
[ https://issues.jboss.org/browse/ISPN-5222?page=com.atlassian.jira.plugin.... ]
RH Bugzilla Integration commented on ISPN-5222:
-----------------------------------------------
Dave Stahl <dstahl(a)redhat.com> changed the Status of [bug 1211944|https://bugzilla.redhat.com/show_bug.cgi?id=1211944] from POST to MODIFIED
> Perform Remote Filtering/Conversion in a single step
> ----------------------------------------------------
>
> Key: ISPN-5222
> URL: https://issues.jboss.org/browse/ISPN-5222
> Project: Infinispan
> Issue Type: Feature Request
> Components: Listeners
> Affects Versions: 7.1.0.Final
> Reporter: Stylianos Koussouris
> Assignee: Galder Zamarreño
> Fix For: 7.2.0.Final
>
>
> I want to have filter and convert take place in one step ie. do filtering and conversion applied to REMOTE LISTENERS in one step
> a) I define CacheEventConverterFactory which implements CacheEventConverterFactory, Serializable
> b) I register on the server org.infinispan.notifications.cachelistener.filter.CacheEventConverterFactory the cache event converter
> which returns (CacheEventConverter<K, V, C>) new SharesDynamicFilterConverter(params);
> c) I then define CacheEventFilterFactory which implements CacheEventFilterFactory, Serializable {
> and returns(CacheEventFilter<K, V>) new SharesDynamicFilterConverter(params);
> d) The CustomeDynamicFilterConverter extends AbstractCacheEventFilterConverter<String, Share, ShareProgress> implements Serializable {
> and has the implementation of
> public Share filterAndConvert(String key, Share oldValue, Metadata oldMetadata, Share newValue, Metadata newMetadata, EventType eventType) {
> e) finally I define a listener binding it to the filter and converter
> @ClientListener(filterFactoryName = "custom-dynamic-filter",
> converterFactoryName = "custom-dynamic-converter",
> includeCurrentState = true)
> and register it along with params for the filter on the client side
> cache.addClientListener(listener, new Object[]{"NYX", 50f}, null);
> The result of this is that certainly both accept and convert methods are run and both call the same filterAndConvert method on SharesDynamicFilterConverter
> However, this is not desirable as I don't want 2 steps which will effectively do the same thing but a single step. TBH I am not happy with the solution but what I did (in absence of better understanding of how to combine the steps -NOTE there is no single Factory for both Converter and Filter and even if it did we would probably have to implement accept & convert inside so the end result would have been the same)
> So what I did was to change the last step
> ie.
> e) finally I define a listener binding ONLY the converter
> @ClientListener(converterFactoryName = "murex-dynamic-converter", includeCurrentState = true)
> and register it along with params ONLY for the converter on the client side
> cache.addClientListener(listener, null, new Object[]{"NYX", 50f});
> This works as it actually does the filter during the convert step BUT is there another way and am I missing something? If not this would be a feature request
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
9 years, 3 months
[JBoss JIRA] (ISPN-5388) Optimize redundant predicates (non-indexed query)
by RH Bugzilla Integration (JIRA)
[ https://issues.jboss.org/browse/ISPN-5388?page=com.atlassian.jira.plugin.... ]
RH Bugzilla Integration commented on ISPN-5388:
-----------------------------------------------
Dave Stahl <dstahl(a)redhat.com> changed the Status of [bug 1211944|https://bugzilla.redhat.com/show_bug.cgi?id=1211944] from POST to MODIFIED
> Optimize redundant predicates (non-indexed query)
> -------------------------------------------------
>
> Key: ISPN-5388
> URL: https://issues.jboss.org/browse/ISPN-5388
> Project: Infinispan
> Issue Type: Enhancement
> Components: Embedded Querying
> Affects Versions: 7.0.0.Final
> Reporter: Adrian Nistor
> Assignee: Adrian Nistor
> Fix For: 7.2.0.CR1, 7.2.0.Final
>
>
> Cases where predicates evaluate to constant values are already detected and handled. But besides such trivial simplifications we should also try to handle more advanced simplification rules like:
> * X || X => X
> * X && X => X
> * !X || !X => !X
> * !X && !X => !X
> * X || !X => TRUE (tautology)
> * X && !X => FALSE (contradiction)
> (where X is a predicate not a general boolean expression)
> Even further simplification could be achieved if we were able to handle the general case where X is a general boolean expression, but we'll not try that yet for the sake of complexity.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
9 years, 3 months