Hi Dan,

Some notes:

Ownership Information:
- I remember the discussion with Sanne about an algorithm that wouldn't require 
view prepare/rollback, but I think it would be very interring to see it 
described in detail somewhere as all the points you raised in the document are 
very closely tied to that
- "However, it's not that clear what to do when a node leaves while the cache 
is in "steady state"" --> if (numOwners-1) nodes crash a state transfer is 
(most likely) wanted in order not to loose consistency in the eventuality 
another node goes down. By default numOwners is 2, so in the first release, 
can't we just assume that for every leave we'd want immediately issue a state 
transfer? I think this would cover most of our user's needs and simplify the 
problem considerably.

Recovery
- I agree with your point re:recovery. This shouldn't be considered hight prio 
in the first release. The recovery info is kept in an independent cache, which 
allows a lot of flexibility: e.g. can point to a shared cache store so that 
recovery caches on other nodes can read that info when needed.


Locking/sync..
"The state transfer task will acquire the DCL in exclusive mode after updating 
the cache view id and release it after obtaining the data container snapshot. 
This will ensure the state transfer task can't proceed on the old owner until 
all write commands that knew about the old CH have finished executing." <-- 
that means that incoming writes would block for the duration of iterating the 
DataContainer? That shouldn't be too bad, unless a cache store is present..

"CacheViewInterceptor [..] also needs to block in the interval between a node 
noticing a leave and actually receiving the new cache view from the 
coordinator" <-- why can't the local cache star computing the new CH 
independently and not wait for the coordinator..?

Cheers,
Mircea

On 8 Mar 2012, at 10:55, Dan Berindei wrote:

> Hi guys
> 
> It's been a long time coming, but I finally published the non-blocking
> state transfer draft on the wiki:
> https://community.jboss.org/wiki/Non-blockingStateTransfer
> 
> Unlike my previous state transfer design document, I think I've
> fleshed out most of the implications. Still, there are some things I
> don't have a clear solution for yet. As you would expect it's mostly
> around merging and delayed state transfer.
> 
> I'm looking forward to hearing your comments/advice!
> 
> Cheers
> Dan
> 
> PS: Let's discuss this over the mailing list only.
> _______________________________________________
> infinispan-dev mailing list
> [email protected]
> https://lists.jboss.org/mailman/listinfo/infinispan-dev

_______________________________________________
infinispan-dev mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/infinispan-dev

Reply via email to