Just use your own transactions, then 'commitChanges' turns into 'flush':

http://cayenne.apache.org/doc/understanding-transactions.html

Andrus

On Feb 18, 2008, at 7:49 AM, Malcolm Edgar wrote:

Hi Ari,

thanks for the response.  This would be a very good 3.0 feature if it
is not already present.

In Hibernate this functionality is performed as a flush operation,
where CRUD operations are performed against the transaction but are
not actually committed.

Would this would cause issues with Cayenne PK generation strategy, are
the highest/last table id values they maintained in memory?

regards Malcolm Edgar

On Feb 18, 2008 3:16 PM, Aristedes Maniatis <[EMAIL PROTECTED]> wrote:

On 18/02/2008, at 2:07 PM, Malcolm Edgar wrote:

Is there a way in Cayenne, possibly using Transactions, that we can
perform this import, do inserts and queries against the transaction
and only commit/rollback at the end?

Subclass the Cayenne context, override performQuery and add in your
own custom code there to look for new objects within the context?
There is almost certainly a way to have a database transaction cross
several Cayenne commits as well, but I can't assist there.

In fact we've done this several times in our application and I was
just thinking the other day whether this might be an option in a new
generified performQuery and might be useful to be pushed into Cayenne.


Ari Maniatis


-------------------------->
ish
http://www.ish.com.au
Level 1, 30 Wilson Street Newtown 2042 Australia
phone +61 2 9550 5001   fax +61 2 9550 4001
GPG fingerprint CBFB 84B4 738D 4E87 5E5C  5EFA EF6A 7D2E 3E49 102A





Reply via email to