[infinispan-issues] [JBoss JIRA] (ISPN-7586) Rolling Upgrade: use of Remote Store in mode read-only causes data inconsistencies

Gustavo Fernandes (JIRA) issues at jboss.org
Mon Mar 13 11:03:00 EDT 2017


     [ https://issues.jboss.org/browse/ISPN-7586?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gustavo Fernandes updated ISPN-7586:
------------------------------------
    Description: 
Assuming a Hot Rod client pointing to the target cluster. Target cluster has a {{RemoteStore}} pointing to the source cluster in read-only mode. 

Clients can see the following situation:

{code:java}
client.put("K","value")

// will get "V" back
client.get("K")                 

// Deletes will not propagate to the source cluster, 
// the RemoteStore is in 'read-only' mode.
client.remove("K")     

// Returns "V". Although deleted, value will be retrieved 
// from the remote store      
cache.get("K")     
       
{code}

This can break existing application that expect a transparent and consistent access to data during a Rolling Upgrade process. Clearly the remote store should be in non-read only mode for clients iteration but at the same time it should not allow the Rolling Upgrade itself to cause writes back to the remote store.

  was:
Assuming a Hot Rod client pointing to the target cluster. Target cluster has a {{RemoteStore}} pointing to the source cluster in read-only mode. 

Clients can see the following situation:

{code:java}
client.put("K","value")

// will get "V" back
client.get("K")                 

// Deletes will not propagate to the source cluster, 
// the RemoteStore is in 'read-only' mode.
client.remove("K")     

// Returns "V". Although deleted, value will be retrieved 
// from the remote store      
cache.get("K")     
       
{code}





> Rolling Upgrade: use of Remote Store in mode read-only causes data inconsistencies
> ----------------------------------------------------------------------------------
>
>                 Key: ISPN-7586
>                 URL: https://issues.jboss.org/browse/ISPN-7586
>             Project: Infinispan
>          Issue Type: Bug
>            Reporter: Gustavo Fernandes
>
> Assuming a Hot Rod client pointing to the target cluster. Target cluster has a {{RemoteStore}} pointing to the source cluster in read-only mode. 
> Clients can see the following situation:
> {code:java}
> client.put("K","value")
> // will get "V" back
> client.get("K")                 
> // Deletes will not propagate to the source cluster, 
> // the RemoteStore is in 'read-only' mode.
> client.remove("K")     
> // Returns "V". Although deleted, value will be retrieved 
> // from the remote store      
> cache.get("K")     
>        
> {code}
> This can break existing application that expect a transparent and consistent access to data during a Rolling Upgrade process. Clearly the remote store should be in non-read only mode for clients iteration but at the same time it should not allow the Rolling Upgrade itself to cause writes back to the remote store.



--
This message was sent by Atlassian JIRA
(v7.2.3#72005)


More information about the infinispan-issues mailing list