[jboss-jira] [JBoss JIRA] Commented: (JBCACHE-806) Invalidation causes problems with otimistic data versioning and certain edge cases

Manik Surtani (JIRA) jira-events at jboss.com
Fri Oct 27 12:22:14 EDT 2006


    [ http://jira.jboss.com/jira/browse/JBCACHE-806?page=comments#action_12345919 ] 
            
Manik Surtani commented on JBCACHE-806:
---------------------------------------

Solution:

Use INV_SYNC and if a remote eviction fails with a data version mismatch on a remote node, propagate the exception back to the caller, fail any tx on the caller's side.  This will create a 'network' of valid versions, even if the valid versions don't exist on the current node.



> Invalidation causes problems with otimistic data versioning and certain edge cases
> ----------------------------------------------------------------------------------
>
>                 Key: JBCACHE-806
>                 URL: http://jira.jboss.com/jira/browse/JBCACHE-806
>             Project: JBoss Cache
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: Replication
>    Affects Versions: 1.4.0.SP1
>            Reporter: Manik Surtani
>         Assigned To: Manik Surtani
>             Fix For: 2.0.0.GA, 1.4.1.GA
>
>
> Related to JBCACHE-793, but that has more to do with fixing the recommended configurations.
> From email conversations:
> Manik >>
> At the moment, if I do a put() with V1 into CacheA, this sends an invalidation msg to CacheB.  If CacheB has V2 already, the invalidation will fail.  What you are saying is, this failure should propagate back to CacheA so the put() with V1 will also fail and this will not exist in CacheA's memory.  Am I correct?
> Max >>
> It wasn't the scenario I had in mind, but this one is probably also relevant.
> Manik >>
> Or is the scenario you're trying to paint more like:
> V2 put into CacheA.  CacheB has V1, gets the invalidation msg, and V1 is evicted.  Someone now calls a put() on CacheB with V1, and you are afraid this will be written into the cache?  This is true, the invalidation back to CacheA will fail, but CacheB will have stale data in the cache.
> Max >>
> This is the scenario I had in mind yes.

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

        



More information about the jboss-jira mailing list