Hmm, I can look into the UUID thing a bit more, but at first glance I don't think it has the information I'd like encoded in it. But thanks! :-)
As to my comments, I have a feeling that changing the value of an existing primary key of an object would have bad consequences on the Cayenne object graph (mess Cayenne up). I've never tried it, but it just doesn't seem like the right thing to do.
The second thing you mentioned, catching exceptions and trying again, seems very hackish, which I'm sure you already know.
Is there any reason you can't use the existing server-side PK generation?
/dev/mrg
-----Original Message-----
From: oyvindharbo..mail.com [mailto:oyvindharboe@gmail.com] On Behalf Of Øyvind Harboe
Sent: Wednesday, June 21, 2006 9:16 AM
To: cayenne-use..ncubator.apache.org
Subject: Re: Generating primary key locally without extra tables
On 6/21/06, Gentry, Michael (Contractor) <michael_gentr..anniemae.com> wrote:
> I actually looked into making a PK generator that required no DB access, but when I looked into it, Java didn't support everything I wanted without resorting to JNI and C code. Of course, I was more ambitious in what I was thinking. I wanted it to be similar to what I could do in EOF (hundreds of keys/sec).
>
> Does anyone here know if Java 1.5 supports obtaining the process ID natively? I think that was my stumbling point before. I was trying to make a key that contained server IP, process ID, timestamp, and counter. Maybe it is time to consider this again. If I could produce a unique string all the time like that, it would make a nice PK generator and your PKs would have some meaning (that is me with my production support hat on).
It sounds like you are looking for something like:
http://java.sun.com/j2se/1.5.0/docs/api/java/util/UUID.html
> As to your questions ...
>
> A) My gut feeling tells me that wouldn't be a good idea.
Could you be more specific?
We're replacing a horrid .asp + MS Access application, which
inevitably leads to some nausea :-)
> B) You could do that, but it seems pretty problematic to me.
More specific?
> Maybe some others will have a few good ideas ...
If I can have an MSAccess & Oracle & MS SQL adapter that supports
server generated keys, then that will also solve my problems. Might be
a bit quixotic though. :-)
-- Øyvind Harboe http://www.zylin.com
This archive was generated by hypermail 2.0.0 : Wed Jun 21 2006 - 09:37:02 EDT