Re: paper on Prevayler

Justin Sampson <[email protected]> Wed, 6 Aug 2014 22:11:10 +0000
Newsgroups gmane.comp.java.prevayler
Message-ID <0FD072A166C6DC4C851F6115F37DDD2763ED11FF@sm-ex-02-vm.guidewire.com>
Karl Wettin wrote:

> I suppose that the point of Prevayler is a matter of opinion,
> so don't focus to much on what I find horrible.
>
> All I was trying to communicate is that I find short
> transactions to be spawns of leaving rules and calculations
> that decide how the domain data model is to be altered outside
> of the transaction, more or less making transactions clusters
> of setter properties. 

Okay, got it. That actually sounds pretty close to how Fowler et
al. and the DDD community talk about "event sourcing," which I've
always thought of as fairly distinct from Prevayler's "arbitrary
Turing-complete transactions." The ability to encapsulate real
logic into an atomic transaction is one of the more appealing
features of Prevayler to me. Then again, supporting completely
arbitrary Turing-complete transactions is exactly what makes
determinism so hard, which is my biggest practical worry when
using Prevayler...

> Actually, I never heard the terms short and long transactions
> before, but since I got comfortable with prevalence it's been
> my opinion for many reasons that one should chase the short.
> Afraid I have no time to go in to details about why right now,
> but to summarize it's about stuff such as loading large
> journals, debugging, speed of development and fixing bugs after
> the fact of executing my transactions. But if the only goal we
> consider is reaching a certain state of the prevalent object
> graph in order to achieve speedy read operations, then it
> really doesn't matter how we reach it. And that is why I say
> that I suppose that the point of Prevayler is a matter of
> opinion.

Thanks -- that's a great list of concrete advantages. Let's add
"ease of determinism" to that list. As long as the important
logic is happening outside of a transaction, it's trivial to
ensure that the transaction itself is deterministic. You just
have to watch out for consistency/isolation vs. other business
operations, which Prevayler otherwise gives you for free.

Cheers,
Justin


------------------------------------------------------------------------------
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls. 
Build a bridge from your legacy apps to the future.
http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk
_______________________________________________
To unsubscribe go to the end of this page: http://lists.sourceforge.net/lists/listinfo/prevayler-discussion
_______________________________________________
"Databases in Memoriam" -- http://www.prevayler.org