[JBoss JIRA] (ISPN-5677) HR putIfAbsentAsync not enforcing withFlags(Flag.FORCE_RETURN_VALUE)
by Galder Zamarreño (JIRA)
[ https://issues.jboss.org/browse/ISPN-5677?page=com.atlassian.jira.plugin.... ]
Galder Zamarreño updated ISPN-5677:
-----------------------------------
Status: Pull Request Sent (was: Coding In Progress)
Git Pull Request: https://github.com/infinispan/infinispan/pull/3650
> HR putIfAbsentAsync not enforcing withFlags(Flag.FORCE_RETURN_VALUE)
> ----------------------------------------------------------------------
>
> Key: ISPN-5677
> URL: https://issues.jboss.org/browse/ISPN-5677
> Project: Infinispan
> Issue Type: Bug
> Affects Versions: 6.0.2.Final
> Reporter: Shay Matasaro
> Assignee: Galder Zamarreño
> Fix For: 8.0.0.CR1, 8.0.0.Final
>
>
> given the following HR client code
> NotifyingFuture<String> f1 = cache.withFlags(Flag.FORCE_RETURN_VALUE).putIfAbsentAsync(key, "1");
> System.out.println(f1.get(10,TimeUnit.MINUTES));
> NotifyingFuture<String> f2 = cache.withFlags(Flag.FORCE_RETURN_VALUE).putIfAbsentAsync(key, "2");
> System.out.println(f2.get(10,TimeUnit.MINUTES));
> both prints print null, where the second one should print "1"
> only when props.put("infinispan.client.hotrod.force_return_values","true") is set specifically when building the CM then the calls work
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
10 years, 8 months
[JBoss JIRA] (ISPN-5677) HR putIfAbsentAsync not enforcing withFlags(Flag.FORCE_RETURN_VALUE)
by Galder Zamarreño (JIRA)
[ https://issues.jboss.org/browse/ISPN-5677?page=com.atlassian.jira.plugin.... ]
Galder Zamarreño updated ISPN-5677:
-----------------------------------
Fix Version/s: 8.0.0.CR1
8.0.0.Final
> HR putIfAbsentAsync not enforcing withFlags(Flag.FORCE_RETURN_VALUE)
> ----------------------------------------------------------------------
>
> Key: ISPN-5677
> URL: https://issues.jboss.org/browse/ISPN-5677
> Project: Infinispan
> Issue Type: Bug
> Affects Versions: 6.0.2.Final
> Reporter: Shay Matasaro
> Assignee: Galder Zamarreño
> Fix For: 8.0.0.CR1, 8.0.0.Final
>
>
> given the following HR client code
> NotifyingFuture<String> f1 = cache.withFlags(Flag.FORCE_RETURN_VALUE).putIfAbsentAsync(key, "1");
> System.out.println(f1.get(10,TimeUnit.MINUTES));
> NotifyingFuture<String> f2 = cache.withFlags(Flag.FORCE_RETURN_VALUE).putIfAbsentAsync(key, "2");
> System.out.println(f2.get(10,TimeUnit.MINUTES));
> both prints print null, where the second one should print "1"
> only when props.put("infinispan.client.hotrod.force_return_values","true") is set specifically when building the CM then the calls work
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
10 years, 8 months
[JBoss JIRA] (ISPN-5664) Null is returned for a not expired entry in Hot Rod client
by Galder Zamarreño (JIRA)
[ https://issues.jboss.org/browse/ISPN-5664?page=com.atlassian.jira.plugin.... ]
Galder Zamarreño commented on ISPN-5664:
----------------------------------------
PR integrated, leaving it open till it's ported to 7.2.x.
> Null is returned for a not expired entry in Hot Rod client
> ----------------------------------------------------------
>
> Key: ISPN-5664
> URL: https://issues.jboss.org/browse/ISPN-5664
> Project: Infinispan
> Issue Type: Bug
> Components: Remote Protocols
> Affects Versions: 8.0.0.Beta2
> Reporter: William Burns
> Assignee: William Burns
> Fix For: 8.0.0.CR1, 7.2.5.Final
>
>
> For a mortal entry (lifespan > -1), overwriting it with lifespan=-1 (make it immortal) unexpectedly removes the entry like follows.
> ~~~
> cache.put(key, "value1", 100, TimeUnit.SECONDS, 100, TimeUnit.SECONDS);
> cache.get(key); // returns "value1"
> cache.put(key, "value2", -1, TimeUnit.SECONDS, 100, TimeUnit.SECONDS);
> cache.get(key); // returns null, expected "value2"
> cache.put(key, "value3", -1, TimeUnit.SECONDS, 100, TimeUnit.SECONDS);
> cache.get(key); // returns "value3"
> ~~~
> In library mode, the 2nd get returns non-null as expected. The same behaviour is observed for a transient (maxIdle > -1) entry also.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
10 years, 8 months
[JBoss JIRA] (ISPN-5670) Hot Rod server sets -1 for lifespan or maxIdle as default
by Galder Zamarreño (JIRA)
[ https://issues.jboss.org/browse/ISPN-5670?page=com.atlassian.jira.plugin.... ]
Galder Zamarreño commented on ISPN-5670:
----------------------------------------
PR integrated, leaving it open till it's ported to 7.2.x.
> Hot Rod server sets -1 for lifespan or maxIdle as default
> ---------------------------------------------------------
>
> Key: ISPN-5670
> URL: https://issues.jboss.org/browse/ISPN-5670
> Project: Infinispan
> Issue Type: Bug
> Components: Remote Protocols
> Reporter: William Burns
> Assignee: William Burns
> Fix For: 8.0.0.CR1, 7.2.5.Final
>
>
> The hotrod server currently keeps the default lifespan and maxIdle in the CacheDecodeContext. This works fine however a metadata is generated ignoring that if -1 is passed. Instead the put(K, V, Metadata) merges the default metadata into the one generated, which won't have a lifespan or maxIdle set since it was -1. In this case the merge method will take the default value instead. We should explicitly set the metadata to -1 before calling put(K, V, Metadata)
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
10 years, 8 months