Re: ACIDity of Prevayler 2.6

Paul Bennett <[email protected]> Thu, 15 Nov 2012 08:10:50 -0500
Newsgroups gmane.comp.java.prevayler
Message-ID <[email protected]>
Hakan,

On Nov 15, 2012, at 7:12 AM, hakan eryargi wrote:

> 
> If not atomicity, what shall we call that property Prevayler has, on
> system crash and recovery, of producing all the effects (even bugs) of
> the last transaction it received or none of the effects?
> 
> I dont get the relation between recovery and atomicity? Isn't that simply durability; D in ACID?

I think the point is that different classes of errors affect different aspects. Resiliency in the face of power fail is about atomicity - you won't write half a txn. Resiliency in the face of other errors can be about consistency. For example, consider concurrency conflicts - are they flagging a break of atomicity or consistency ?

But then: should the system allow a txn that produces an inconsistent state to be made persistent? The point is that atomicity is not orthogonal to consistency (or isolation) - from the Wikipedia definition of Atomicity:

"Atomicity does not behave completely orthogonally with regard to the other ACID properties of the transactions. For example, isolation relies on atomicity to roll back changes in the event of isolation failures such as deadlock; consistency also relies on rollback in the event of a consistency-violation by an illegal transaction. Finally, atomicity itself relies on durability to ensure the atomicity of transactions even in the face of external failures.
As a result of this, failure to detect errors and manually roll back the enclosing transaction may cause failures of isolation and consistency."

This, I think, is what all the fuss is about :-)

-pb

>  
> Seems to me you are saying that the only way of achieving atomicity in
> a language without exceptions is to implement exceptions in that
> language.
> 
> All I'm saying is, in such a language we need a way to define failures. A return value, a global variable, home-made exceptions or whatever. in Java we already have one
> ------------------------------------------------------------------------------
> Monitor your physical, virtual and cloud infrastructure from a single
> web console. Get in-depth insight into apps, servers, databases, vmware,
> SAP, cloud infrastructure, etc. Download 30-day Free Trial.
> Pricing starts from $795 for 25 servers or applications!
> http://p.sf.net/sfu/zoho_dev2dev_nov_______________________________________________
> To unsubscribe go to the end of this page: http://lists.sourceforge.net/lists/listinfo/prevayler-discussion
> _______________________________________________
> "Databases in Memoriam" -- http://www.prevayler.org

-pb

------------------------------------------------------------------------------
Monitor your physical, virtual and cloud infrastructure from a single
web console. Get in-depth insight into apps, servers, databases, vmware,
SAP, cloud infrastructure, etc. Download 30-day Free Trial.
Pricing starts from $795 for 25 servers or applications!
http://p.sf.net/sfu/zoho_dev2dev_nov

_______________________________________________
To unsubscribe go to the end of this page: http://lists.sourceforge.net/lists/listinfo/prevayler-discussion
_______________________________________________
"Databases in Memoriam" -- http://www.prevayler.org