On Mon, Nov 18, 2013 at 9:43 AM, Galder Zamarreño <galder(a)redhat.com> wrote:
On Nov 14, 2013, at 1:20 PM, Pedro Ruivo <pedro(a)infinispan.org> wrote:
> Hi,
>
> Simple question: shouldn't PFER ensure some consistency?
>
> I know that PFER is asynchronous but (IMO) it can create inconsistencies
> in the data. the primary owner replicates the PFER follow by a PUT (PFER
> is sent async log the lock is released immediately) for the same key, we
> have no way to be sure if the PFER is delivered after or before in all
> the backup owners.
>
> comments?
Assuming that PFER and PUT happen in the same thread, we're normally
relying on the JGroups sequence of events to send the first, wait no
response, and then send the second put. That should guarantee order in
which puts are received in the other nodes, but after that yeah, there's a
risk that it could happen. PFER and PUT for a given key normally happen in
the same thread in cache heavy use cases such as Hibernate 2LC, but there's
no guarantee.
I don't think that's correct. If the cache is synchronous, the PUT will be
sent as an OOB message, and as such it can be delivered on the target
before the previous PFER command. That's regardless of whether the PFER
command was sent as a regular or as an OOB message.
Cheers,
>
> Pedro
> _______________________________________________
> infinispan-dev mailing list
> infinispan-dev(a)lists.jboss.org
>
https://lists.jboss.org/mailman/listinfo/infinispan-dev
--
Galder Zamarreño
galder(a)redhat.com
twitter.com/galderz
Project Lead, Escalante
http://escalante.io
Engineer, Infinispan
http://infinispan.org
_______________________________________________
infinispan-dev mailing list
infinispan-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/infinispan-dev