Validation occurs at the API level, returning an InvalidRequestException to the caller of the API (a thrift client in this case). Specifically, a mutation will not be scheduled for the storage until it has been validated at the API level.
If the intention is to do a read-before-write validation as an AbstractType extension, then yes, the underlying value could indeed change between validation and storage. If this were the goal, you need to implement locking externally (via zookeper or similar as previously mentioned). On Fri, Jul 8, 2011 at 10:21 AM, William Oberman <ober...@civicscience.com> wrote: > I haven't ever written my own org.apache.cassandra.db.marshal.AbstractType > (which is I think what your talking about), so I have no idea. > > Looking up the JavaDoc for that class, validate says "validate that the byte > array is a valid sequence for the type we are supposed to be comparing", > which sounds like a local operation to me (e.g. it shouldn't fetch remote > data, it's just saying "yep, this is a valid member of type T"). > > will > > On Fri, Jul 8, 2011 at 11:17 AM, Jeffrey Kesselman <jef...@gmail.com> wrote: >> >> Alright, >> So are you saying the column validator, as specified >> by conf/storage-conf.xml is checked in the client interface library and not >> on the server side? That seems odd to me on a number of levels, not the >> least being I cant see how thrift could autogenerate that >> for different languages or how those other languages would use a Java class. >> >> On Fri, Jul 8, 2011 at 11:13 AM, William Oberman >> <ober...@civicscience.com> wrote: >>> >>> I use a language specific wrapper around thrift as my "client", but yes, >>> I guess I fundamentally mean thrift == client, and the cassandra server == >>> server. >>> >>> will >>> >>> On Fri, Jul 8, 2011 at 11:08 AM, Jeffrey Kesselman <jef...@gmail.com> >>> wrote: >>>> >>>> I am confused by what you mean by "Cassandra client code." Is this part >>>> of the Cassnadra server? >>>> My architecture is my "user" talks thrift to Cassandra. >>>> >>> >> >> >> >> -- >> It's always darkest just before you are eaten by a grue. > > >