"afelle1" wrote : QUESTION: Whenever putting an attribute / node into the cache 
and a replication exception occurs due to time out or a remote machine being 
suspect, is the attribute / node put into the cache on the other machines that 
did respond?
  | 
  | We have our cache configured for synchronous replication with a cluster of 
5 initial members.  Occasionally, we receive a stack trace in the error log for 
replication errors involving one of the members being timed out or suspected, 
however I am unsure as to the state of the cache.  These occur whenever we are 
putting a new attribute within the cache, so I want to know whether the 
attribute was put into the cache on all machines except for the suspected / 
timed out machine or if wasn't put into the cache on any of the machines.

This depends on your cfg.  You said you are using sync replication, but are you 
running in a transaction?  And if so, are you using sync commit phase?  

Basically, if:

1)  You are not running in a TX, then the state of all nodes *could* be out of 
sync.  I.e., the put() could have completed on node 1 and node 2.  Node 3 could 
fail, so your app sees an exception, but it has succeeded on node 1 and node 2 
and there is no way to roll back.

2)  If you were running in a TX, when node 3 fails, the node propagating the 
change will broadcast a rollback to node 1 and node 2 - but only IF node 3 
fails in the prepare phase of a 2-phase-commit.

3)  If node 3 fails during the commit phase, the outcome is indeterminate, as 
dictated by JTA.  I.e., nodes 1 and 2 have been asked to commit state and while 
attempting to tell node 3 to commit, we have a suspect exception.  There is no 
way to tell nodes 1 and 2 to rollback, after we have already told them to 
commit.

HTH,
Manik

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4183429#4183429

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4183429
_______________________________________________
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to