--
You received this message because you are subscribed to the Google Groups "JSR 347 discussions" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jsr347+un...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
So reading the details on the wiki, it "merely" is about an API to resolve conflicts.The proposed API talks about Version (which I haven't seen defined. How are things getting versioned?), of ways to potentially retrieved versioned data and how to resolve conflicts (which we don't know how these conflicts occur?).
But before thinking in those terms, I guess we need to define "eventual consistency" altogether.
What I read between the lines from the above, is that anything that makes it in the grid, e.g. put(K, V), gets versioned somehow and that when the <K, V, Version> triplet arrives where the authority is, it'll make sure it only is applied if no newer version is already there, is that right ? How does that define "eventual consistency" for us ?
I expect the vendors amongst us here to have some strong opinions on this (based on what they currently support), but I will hold off pushing for the best option, which is ours obviously ;)
On Wed, Apr 9, 2014 at 11:16 AM, Mircea Markus <mircea...@gmail.com> wrote:
Hi,Re: the eventual consistent API, are there any data grids that expose such an API?I could only find stores such as Cassandra and and MongoDB having eventual consistency, but these are a bit out of the scope of the spec, IMO.Cheers,Mircea
--
You received this message because you are subscribed to the Google Groups "JSR 347 discussions" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jsr347+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Would be good to see Manik's thoughts on this as well, but here is my understanding:On Wednesday, April 9, 2014 5:42:19 PM UTC+1, Alex Snaps wrote:So reading the details on the wiki, it "merely" is about an API to resolve conflicts.The proposed API talks about Version (which I haven't seen defined. How are things getting versioned?), of ways to potentially retrieved versioned data and how to resolve conflicts (which we don't know how these conflicts occur?).The API and the versioning is inspired from the Amazon Dynamo paper (section 4.4): http://www.allthingsdistributed.com/files/amazon-dynamo-sosp2007.pdfConflicts occur when the same data/key is updated in two partitions which are then merged.
But before thinking in those terms, I guess we need to define "eventual consistency" altogether.What I read between the lines from the above, is that anything that makes it in the grid, e.g. put(K, V), gets versioned somehow and that when the <K, V, Version> triplet arrives where the authority is, it'll make sure it only is applied if no newer version is already there, is that right ? How does that define "eventual consistency" for us ?I think the dynamo paper from which this requirement has been inspired defines it pretty well:"Dynamo provides eventual consistency, which allows for updatesto be propagated to all replicas asynchronously. A put() call mayreturn to its caller before the update has been applied at all thereplicas, which can result in scenarios where a subsequent get()operation may return an object that does not have the latestupdates"
I expect the vendors amongst us here to have some strong opinions on this (based on what they currently support), but I will hold off pushing for the best option, which is ours obviously ;)Eventual consistency is a way to achieve Partition tolerance by sacrificing Consistency: users might see stale (inconsistent) data in the presence of network failures.Here's Infinispan take on handling split-branins: https://github.com/infinispan/infinispan/wiki/Handling-cluster-partitions
On the short: ATM we don't have, nor plan to add in the near feature an versioned-based API as the one in the JSR347 wiki[1] for handling cluster partitions. Our current approach is to sacrifice Availability (allow the user the decide actually if he/she still want the cluster to run in the presence of partitions). I'm curious though if there are vendors that have such an API. If there are no vendors with such an API, not sure it's worth considering it for JSR347 either.
On Wed, Apr 9, 2014 at 11:16 AM, Mircea Markus <mircea...@gmail.com> wrote:
Hi,--Re: the eventual consistent API, are there any data grids that expose such an API?I could only find stores such as Cassandra and and MongoDB having eventual consistency, but these are a bit out of the scope of the spec, IMO.Cheers,Mircea
You received this message because you are subscribed to the Google Groups "JSR 347 discussions" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jsr347+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--Alex Snaps <alex....@gmail.com>
Principal Software Engineer - Terracotta
http://twitter.com/alexsnaps
http://www.linkedin.com/in/alexsnaps
http://withinthefra.me
--
You received this message because you are subscribed to the Google Groups "JSR 347 discussions" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jsr347+un...@googlegroups.com.