I don't think these 2 puts would be considered have an order.
-------- Original Message --------
Subject: Re: Order of Client Server Event Delivery
From: Real Wes Williams <[email protected]>
Date: Mon, March 14, 2016 2:51 pm
To: [email protected]
What about this scenario?regionA.put(“1”)Thread A - puts “1" into local region AThread A - starts distribution to secondary region A’====> Full GC pauses thread A <======regionB.put(“2”) on a different server nodeThreadB - puts “2” into local region BThreadB - completes distribution to secondary region B'ThreadB puts “2” onto client queueThreadA wakes upThreadA completes distribution to second region A’ThreadA puts “1” onto client queueDoes the subscription queue know that it is “out of order” due to an internal timestamp receipt?If so, will the subscription queue put the events into the proper order before the queue ships back to the client?Does the subscription queue know to “wait” for the out-of-sequence event to come before shipping to the client?On Mar 14, 2016, at 4:51 PM, Anilkumar Gingade <[email protected]> wrote:Mike, With distributed ack (default for PartitionedRegion), the put operation is not returned (to calling thread) until the events are added to the client subscription queue...And in the subscription queue, we check for out-of-order events....-Anil.On Mon, Mar 14, 2016 at 1:18 PM, Michael Stolz <[email protected]> wrote:Even if it's across 2 separate regions and the primaries aren't even located on the same machine?I don't think our guarantee of ordering goes that far.Two puts on the same key in the same region, yes they will be received in order.Two puts on same or different keys in different regions, I don't believe so.On Mon, Mar 14, 2016 at 4:14 PM, Anilkumar Gingade <[email protected]> wrote:If its the same thread that did the put; the client (any) will receive it in order...We guarantee event ordering at thread level...-Anil.On Mon, Mar 14, 2016 at 12:59 PM, Michael Stolz <[email protected]> wrote:I'd say there's a pretty good chance of the ordering being different for two different regions.On Mon, Mar 14, 2016 at 3:52 PM, Randy May <[email protected]> wrote:Suppose in a client, I do two puts in a particular order:
regionA.put(K,V);
regionB.put(K,V);
If another client has registered interest on both regions, is there any guaranty about the order in which those 2 events are received on that client ? If the client is using local cache, could there be a time when region B contains the new value but region A contains the old value ?
