cayenne-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mike Kienenberger <mkien...@gmail.com>
Subject Re: Rollbacks and Listeners
Date Mon, 09 Aug 2010 15:15:27 GMT
I handle error trapping on the commit statement.   If it throws an
exception, then I do something about it.

Rollbacks in practice over the last few years have almost always been
due to the loss of the ability to change database records (network
issues, database server issues), so logging has to occur via other
methods (inform the end-user if it's interactive, send emails, write
errors to a log file on the local host).  Attempting to write a second
database record at this point normally fails.


On Mon, Aug 9, 2010 at 11:01 AM, Joe Baldwin <jfbaldwin@earthlink.net> wrote:
> Wouldn't an important business-concern (or rule) be that if there was indeed a rollback,
then one might want to log it (via a Cayenne insert)?
>
> I am doing something like this right now and it is a tad tricky.
>
>
>
>
> On Aug 9, 2010, at 10:37 AM, Mike Kienenberger wrote:
>
>> On Mon, Aug 9, 2010 at 5:41 AM, Bruno René Santos <brunorene@holos.pt> wrote:
>>> Im using cayenne on a banking system, where commits and rollbacks are critical.
>>> I was thinking about using cayenne callbacks to include the creation of logs
>>> during database operations. My doubt is what happens when there is a rollback
on
>>> the database during a transaction in terms of callbacks? Do all Pre... callbacks
>>> are called but no Post.. callbacks? Is there any way to know on the callbacks
>>> that the objects were rollbacked?
>>
>> As long as you create the audit records in the same transaction as the
>> rest of the data, when the transaction is rolled back or committed,
>> then the audit logs will be rolled back or committed.   You should not
>> have to do anything on a Post, only on a Pre.
>>
>> ============
>>
>> An old issue on auditing is here.   Not sure how relevant it is for
>> 3.0 as I haven't used 3.0 yet.
>>
>> https://issues.apache.org/jira/browse/CAY-414
>>
>> Some newer threads on auditing:
>>
>> http://mail-archives.apache.org/mod_mbox/cayenne-dev/200902.mbox/%3CB82E356A-3B9B-4D40-B767-2F7C863AAF77@objectstyle.org%3E
>>
>> Andrey posted one set of code for doing this here -- read through the
>> whole thread.
>>
>> http://mail-archives.apache.org/mod_mbox/cayenne-user/200903.mbox/%3C3219fff70903240316o4644e474ia669ea819510ef9f@mail.gmail.com%3E
>
>

Mime
View raw message