cayenne-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Marek Stanisław Wawrzyczny <>
Subject Cayenne, MySQL and PK generation strategies
Date Tue, 27 Jul 2010 02:40:32 GMT
Hi all,

It has been a while since I last posted in this forum.

First, a bit of a background. We have an existing MySQL schema that was driven by a number
of WebObjects applications. These obviously rely on EOF to handle PK generation.
We have decided to refactor the schema in a new database. The new web applications are Cayenne

We now have a bit of discussion on how to handle PK generation in the new schema. My personal
preference is auto incrementing PK columns. It certainly allows for a more generic approach
to the handling of primary keys - it is not necessary for people to be aware of any additional
infrastructure should records be inserted outside of any applications.

Others have expressed concern with MySQL handling of the LAST_INSERT_ID() functionality where
there used to be (still is?) a problem with MySQL's threading implementation in high concurrency/volume
environments. (I presume this is precisely the mechanism used by Cayenne to populate IDs within
the Entities?)
Another cited advantage being suggested is that this approach allows for a vendor-independent
PK generation strategy.

I guess my vested interest here is to dismiss arguments against the use of the auto incrementing
PK strategy :) but that said, I'm very interested to hear whether anyone has done any performance
analysis or has had particular problems with either strategy.


Marek Wawrzyczny
ish group
View raw message