[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
Fri Apr 7 05:47:01 EDT 2017


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

Gustavo Fernandes updated ISPN-7586:
------------------------------------
    Description: 
We recommend to do rolling upgrades with the target cluster with a remote-store pointing to the source cluster, in mode ready-only. Clients are switched to point to the target cluster.

This cause situations like this in the client:

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

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

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

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

This can break existing applications that expect a consistent access to data during a Rolling Upgrade process. Clearly the remote store should not be in read only mode, but at the same time, as the Rolling Upgrade does a put in the target cache reading data from the source cache, it should not trigger a write back to the source cluster.

  was:
We recommend to do rolling upgrades with the target cluster with a remote-store pointing to the source cluster, in mode ready-only. Clients are switched to point to the target cluster.

This cause situations like this in the client:

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

// will get "value" 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 applications that expect a consistent access to data during a Rolling Upgrade process. Clearly the remote store should not be in read only mode, but at the same time, as the Rolling Upgrade does a put in the target cache reading data from the source cache, it should not trigger a write back to the source cluster.



> 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
>            Assignee: Gustavo Fernandes
>             Fix For: 9.0.0.CR4
>
>
> We recommend to do rolling upgrades with the target cluster with a remote-store pointing to the source cluster, in mode ready-only. Clients are switched to point to the target cluster.
> This cause situations like this in the client:
> {code:java}
> client.put("K","value")
> // will get "value" back
> client.get("K")                 
> // Deletes will not propagate to the source cluster, 
> // the RemoteStore is in 'read-only' mode.
> client.remove("K")     
> // Returns "value". Although deleted, value will be retrieved 
> // from the remote store      
> cache.get("K")     
>        
> {code}
> This can break existing applications that expect a consistent access to data during a Rolling Upgrade process. Clearly the remote store should not be in read only mode, but at the same time, as the Rolling Upgrade does a put in the target cache reading data from the source cache, it should not trigger a write back to the source cluster.



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


More information about the infinispan-issues mailing list