Adam, There's a basic explanation in our wiki: http://wiki.basho.com/Vector-Clocks.html#VNode-Vector-Clocks.
Requests to a vnode are processed in serial, but for a given bucket-key pair there's no guarantee that the same vnode will coordinate separate requests. Thus, two writes to the same bucket-key pair can take place at the same time, resulting in siblings. The main advantage of vnode_vclocks is that it places a limit on the length of vclocks as the actors identified in the vclock are the coordinating vnodes rather than clients. Long vclocks are a problem for two reasons: they are space inefficent and they induce vclock pruning, a process wherein the number of entries in a vclock are reduced to save space. There are conditions where vclock pruning can result in sibling generation. -- Ian Plosker <i...@basho.com> Developer Advocate Basho Technologies On Tuesday, January 24, 2012 at 1:00 PM, Adam Schepis wrote: > Hey all, > > i'm having trouble articulating for colleagues why using vnode_vclock=true in > Riak 1.0 avoids the issues outlined in the Vector Clocks are Hard page. This > is probably a sign that i don't understand it well enough myself. > > My understanding is that requests to a vnode are processed in serial so that > the vector clock updates in a vnode are guaranteed to not create duplicates > for a particular object (causing the data loss.) If this is correct, does it > mean that write operations are done in serial, or that both read and writes > are processed in serial? Also is it still just using an incrementing number > or using something like a timestamp as the vector clock value for the client? > > I would love to be able to get a good explanation for this so I can > understand it better myself and so that I can articulate it to colleagues. > > Thanks, > Adam > > _______________________________________________ > riak-users mailing list > riak-users@lists.basho.com (mailto:riak-users@lists.basho.com) > http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com > >
_______________________________________________ riak-users mailing list riak-users@lists.basho.com http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com