[infinispan-issues] [JBoss JIRA] (ISPN-5664) Null is returned for a not expired entry in Hot Rod client

William Burns (JIRA) issues at jboss.org
Mon Aug 10 12:40:02 EDT 2015


    [ https://issues.jboss.org/browse/ISPN-5664?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13096989#comment-13096989 ] 

William Burns commented on ISPN-5664:
-------------------------------------

Okay looking closer, I think I see the issue.  If you pass a -1 for lifespan or maxIdle, it will use the default value defined for that cache.  Thus if you have a low default value this value will be removed from the cache.

It seems that the server is treating -1 the same as 0.  So we need to differentiate those.

> 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
>
> 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)


More information about the infinispan-issues mailing list