Wes, As I mentioned earlier; the ordering is maintained for a thread...We don't guarantee ordering of cache operations between multiple threads...
-Anil. On Mon, Mar 14, 2016 at 2:51 PM, Real Wes Williams <[email protected]> wrote: > What about this scenario? > > regionA.put(“1”) > Thread A - puts “1" into local region A > Thread A - starts distribution to secondary region A’ > > ====> Full GC pauses thread A <====== > > regionB.put(“2”) on a different server node > ThreadB - puts “2” into local region B > ThreadB - completes distribution to secondary region B' > ThreadB puts “2” onto client queue > > ThreadA wakes up > ThreadA completes distribution to second region A’ > ThreadA puts “1” onto client queue > > Does 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. >> >> >> -- >> Mike Stolz >> Principal Engineer, GemFire Product Manager >> Mobile: 631-835-4771 >> >> 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. >>>> >>>> -- >>>> Mike Stolz >>>> Principal Engineer, GemFire Product Manager >>>> Mobile: 631-835-4771 >>>> >>>> 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 ? >>>>> >>>>> >>>> >>> >> > >
