On 22 Oct 2010, at 17:01, Mircea Markus wrote:
On 22 Oct 2010, at 15:17, Vladimir Blagojevic wrote:
>
>>>
>>> The operations that need to be sequential are state transfer and tx log
transfer.
>>> State is being *pulled* by C (thread running on C) and tx log is *pushed* by
A (thread running on A). Two threads running in different VMs.
>>
>> Ok, this would be the issue then - this must have changed when Vladimir inverted
the leave task to be a pull for the main state. They both used to be pushes and
sequential.
>>
>> Perhaps the sequentiality can be re-established by a lock on the receiver?
>
> Interested. What if C thread announce that it pulled state and upon reception of this
message A drains the logs?
Is there any work that can be done in parallel? State transfer and log draining need to
happen in sequence.
If not what's the point of using two threads?
They are not just 2 threads - they are on 2 separate nodes. State tfr is initiated by the
receiver; tx log training by the sender. Hence the different threads. Modifying the
protocol to allow for a state tfr ack message, as Vlad suggested, would work fine.
One thread approach would be more maintainable and simple. I
emphasise _maintainable_ because I've just debugged logs of state transfer and
it's not the nicest thing to do.
_______________________________________________
>
> infinispan-dev mailing list
> infinispan-dev(a)lists.jboss.org
>
https://lists.jboss.org/mailman/listinfo/infinispan-dev
_______________________________________________
infinispan-dev mailing list
infinispan-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/infinispan-dev
--
Manik Surtani
manik(a)jboss.org
Lead, Infinispan
Lead, JBoss Cache
http://www.infinispan.org
http://www.jbosscache.org