On Tue, Apr 7, 2009 at 2:00 PM, Guus Bloemsma <[email protected]> wrote: > You cannot make a "generic merge" with only the information which fields > have been written. You also need to know which fields were read in order to > derive the written values. In Qi4J this list of read fields should be easy > to create. > > A UoWs (transaction) can be committed when all the read fields still have > the same values as when the UoW started. The old values of written, but not > read, fields are irrelevant since they are blindly overwritten. > > Essentially the idea is that when all the read fields still have the same > value, the UoW would have exactly the same result if repeated right now. > This of course assumes that that code is deterministic and not dependent on > IO or the wall clock or something like that.
Interesting observation; If the fields used in a UoW have not changed, the outcome of the UoW will be the same if executed again. Need to ponder over that a while... Cheers -- Niclas Hedhman, Software Developer http://www.qi4j.org - New Energy for Java I live here; http://tinyurl.com/2qq9er I work here; http://tinyurl.com/2ymelc I relax here; http://tinyurl.com/2cgsug _______________________________________________ qi4j-dev mailing list [email protected] http://lists.ops4j.org/mailman/listinfo/qi4j-dev

