[ 
http://www.jahia.net/jira/browse/JAHIA-1689?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Serge Huber updated JAHIA-1689:
-------------------------------

     Original Estimate: 4 days
    Remaining Estimate: 4 days

> When caches are too big and get flushed : cache coherency in cluster is no 
> longer valid !
> -----------------------------------------------------------------------------------------
>
>                 Key: JAHIA-1689
>                 URL: http://www.jahia.net/jira/browse/JAHIA-1689
>             Project: Jahia Web Content Management Server (WCMS)
>          Issue Type: Bug
>          Components: Load Balancing
>    Affects Versions: WCM 5.0, WCM 5.0 SP1
>            Reporter: Serge Huber
>            Assignee: Serge Huber
>            Priority: Major
>             Fix For: WCM 6.0 (Andromeda)
>
>   Original Estimate: 4 days
>  Remaining Estimate: 4 days
>
> Currently we use the following algorithm to know if we must send an 
> invalidation message through the cluster : 
>     public void put(Object key, String[] groups, Object value) {
>         boolean newEntry = true;
>         if (super.get(key) != null) {
>             newEntry = false;
>         }
>         super.put(key, groups, value);
>         if (!newEntry) {
>             clusterService.sendMessage(new ClusterMessage(new 
> ClusterCacheMessage(getName(), ClusterCacheMessage.INVALIDATEENTRY_EVENT, 
> key, null)));
>         }
>     }
> This works fine when starting up Jahia, but doesn't work at all when we have 
> reached a cache limit and elements were flushed from memory. What will happen 
> in this case is that the object will be seen as a "newEntry" and the 
> invalidation message will not be sent, although it is perfectly possible that 
> other nodes might have loaded this object.
> So basically when memory becomes tight, we are no longer guaranteeing cluster 
> integrity !
> When fixing this issue, we must be very careful, because we cannot signal all 
> loads, otherwise Jahia servers will always flush each other all the time.
> Ideally we need to make a difference between a "reload" and a actual value 
> change, and this for all nodes in the cluster.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://www.jahia.net/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        
_______________________________________________
jira_list mailing list
[email protected]
http://lists.jahia.org/cgi-bin/mailman/listinfo/jira_list

Reply via email to