[infinispan-issues] [JBoss JIRA] (ISPN-2172) Cache removals not removing L1 cached values in non-owners after rehashing
Galder Zamarreño (JIRA)
jira-events at lists.jboss.org
Thu Jul 26 11:33:06 EDT 2012
[ https://issues.jboss.org/browse/ISPN-2172?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12708134#comment-12708134 ]
Galder Zamarreño edited comment on ISPN-2172 at 7/26/12 11:32 AM:
------------------------------------------------------------------
This is the problem:
Node A pushes k1 to node B, and node A stops being an owner. In theory, node A should remove k1 from memory, but since L1 is enabled, it keeps it in memory, in the L1 (quite possibly for efficiency). However, node B has not been told that node A is gonna actually keep it (iow, node A has not been added as requestor for key k1 in node B's L1ManagerImpl), so when a remove comes to node B, it doesn't realise that it needs to remove from node A too.
The reason node B does not add node A as requestor for k1 is cos the put call being passed up the stack when applying the state transfer is local, so the logic in DistributionInterceptor.visitPutKeyValueCommand() to add k1 as being 'requested' by node A does not kick in.
was (Author: galder.zamarreno):
This is the problem is this:
node A pushes k1 to node B, and node A stops being an owner. In theory, node A should remove k1 from memory, but since L1 is enabled, it keeps it in memory, in the L1 (quite possibly for efficiency). However, node A has not been told that node B is gonna actually keep it (iow, k1 for node B has not been added to the L1ManagerImpl), so when a remove comes to node A, it doesn't realise that it needs to remove.
> Cache removals not removing L1 cached values in non-owners after rehashing
> --------------------------------------------------------------------------
>
> Key: ISPN-2172
> URL: https://issues.jboss.org/browse/ISPN-2172
> Project: Infinispan
> Issue Type: Bug
> Components: Distributed Cache
> Affects Versions: 5.1.5.FINAL, 5.2.0.ALPHA2
> Reporter: Galder Zamarreño
> Assignee: Galder Zamarreño
> Priority: Critical
> Labels: jdg, jdg6
> Fix For: 5.2.0.ALPHA3, 5.2.0.FINAL
>
>
> There appears to be an issue L1 and removals.
> Seems like on removal, non-owners are not invalidated and data is left in memory.
> If using a Hot Rod server, it would appear as if the remote get operations don't return anything after removal is cos it goes to an owner node, where data is indeed removed.
> However, if you try to build a test case with embedded cache, it clearly shows that after removal, data is left in memory.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the infinispan-issues
mailing list