Oracle trying to get key from sequence (DUAL)--how to stop?

2009-07-30 Thread Lawrence Gerstley
Hello, I've got a system where I need to populate my primary keys directly with GUIDs, rather than letting Cayenne do it. For the most part, this is working fine--I've exposed the keys in the Object layer, and set them when I create a new object. However, there still seem to be calls to a

Re: sync cayenne cache in two web apps

2009-07-30 Thread Mike Kienenberger
Again, if you're really concerned about performance and impact, my guess is that it would be trivial to replace the JGroup protocol with a unix pipe instead of a network socket implementation, if you're on an OS that supports it. On Thu, Jul 30, 2009 at 5:43 PM, Mike Kienenberger wrote: > I don't

Re: sync cayenne cache in two web apps

2009-07-30 Thread Mike Kienenberger
I don't remember the specific implementation, and it might vary for JavaGroups over what is used internally. You really don't need to use multicast if you only have two apps. I'd go with the TCP setup, both for reliability and to limit the impact on the rest of the network. The same traffic prob

Re: sync cayenne cache in two web apps

2009-07-30 Thread Tobias Schoessler
yes that's what I observe too. The messages sent when these updates occure, do they contain the change infromation or only the information which objects to invalidate? I got this asked when I asked for the multicast address, to estiamte traffic for this setup. On Thu, Jul 30, 2009 at 11:33 PM, Mic

Re: sync cayenne cache in two web apps

2009-07-30 Thread Mike Kienenberger
Inserts, deletes, updates, and invalidates, if I remember correctly. On Thu, Jul 30, 2009 at 5:33 PM, Michael Gentry wrote: > Hi Tobias, > > I've not used the cache synchronization before, but I was under the > impression that the main overhead is when inserts/updates/deletes are > done, not when

Re: sync cayenne cache in two web apps

2009-07-30 Thread Mike Kienenberger
Yes, the problem with trying to use a shared variable (DataContext or cache) is that a typical web app really isn't designed for that methodology to be practical. Normally your DataContext or cache would be per request or per session. I could be wrong, but I don't think there's all that much ov

Re: sync cayenne cache in two web apps

2009-07-30 Thread Michael Gentry
Hi Tobias, I've not used the cache synchronization before, but I was under the impression that the main overhead is when inserts/updates/deletes are done, not when selects are done. When you do an insert/update/delete, that information must be broadcast, but selects do not. I'm sure someone will

Re: Strange Problem

2009-07-30 Thread Tobias Schoessler
Lucas, my experience with mysql Autoincrement fields is that you have to map them as Long. there is some bug in the mysql jdbc driver which returns wrong meta information types if the field is set to autoincrement and some other type than BigInt. See http://lists.mysql.com/java/6383 On Thu, Jul

Re: sync cayenne cache in two web apps

2009-07-30 Thread Tobias Schoessler
So thank you for all the suggestions. The solution we finally ended up with was the one Mike actually suggested intitially. We got our multicast ip, dropped the latest Jgroups.jar into both webapps lib directories, selected Jgroups as the Syncronisation mechanism in the cayenne modeller, used the d

Re: Strange Problem

2009-07-30 Thread Michael Gentry
You shouldn't need to write your own method to get the office ID. Add the mapping to your ObjEntity by hand and regenerate the Java class and it should create a getOfficeId() for you. mrg On Thu, Jul 30, 2009 at 4:27 PM, Lucas Holt wrote: > I've got a situation where I need to obtain the primar

Strange Problem

2009-07-30 Thread Lucas Holt
I've got a situation where I need to obtain the primary key. My solution was to add a method like so: public Byte getOfficeId() { return (getObjectId() != null && !getObjectId().isTemporary()) ? (Byte) getObjectId().getIdSnapshot().get(OFFICE_ID_PK_COLUMN)

Re: The right way to populate meaningful keys

2009-07-30 Thread Michael Gentry
I think Juergen is dealing with an existing DB. I think many people have written of the meaningful PK problem, from the fact that the keys might eventually change over time to the fact that the speed of the joins is much worse for a varchar meaningful PK compared to an integer key that is generate

Re: The right way to populate meaningful keys

2009-07-30 Thread Juergen Saar
It is a very old Project (started 1987) and cayenne is running on top of it. All newer Data-Organization is done with technical PK, but to change this old Data-Organization too much changes in the old 4GL-Software have to be done. And you know: Never change a ... 2009/7/30 Eric Lazarus > > (Re

Re: The right way to populate meaningful keys

2009-07-30 Thread Eric Lazarus
(Reminder: Avoid meaningful keys when you have the choice, like anytime you are designing the database from scratch. Who wants to write the wikipedia article on the meaningful pointer problem...?) Eric +1 (917) 589-6579 --- On Thu, 7/30/09, Michael Gentry wrote: > From: Michael Gentry > S

Re: The right way to populate meaningful keys

2009-07-30 Thread Juergen Saar
Pretty hint ... I moved to-dep-pk from 'source' to 'target' of the relation ... it worked A little strage because the join-fields were filled in on both sides It is a typical optional Information that ist attached by the 1:1 relation so to-dep-pk would be right on both sides of the relation. Th

Re: The right way to populate meaningful keys

2009-07-30 Thread Michael Gentry
Hi Juergen, I suspect that you need to assign the key on the other side of your 1:1 relationship, too. Another thing you could try doing is using the To Dep PK checkbox in the DbEntity Relationship panel to see if Cayenne will auto-copy your meaningful PK for you. http://cayenne.apache.org/doc/t

Re: The right way to populate meaningful keys

2009-07-30 Thread Juergen Saar
This was my way ... But I ran in deep trouble with the ObjectId ... this seems not to be sycronized My actual CayenneRuntimeException: Can't extract a master key. Missing key (esd_abteil), master ID () It belongs to a 1:1 Relation and the PK-Values in source and target are correctly set. The Com

Re: The right way to populate meaningful keys

2009-07-30 Thread Michael Gentry
Cayenne, by default, doesn't map keys from the DbEntity (database definition) to the ObjEntity (Java definition), but you can go into the ObjEntity and add them and it should be fine. After you do that, just call the set/get methods for the keys to set/get them. If you set a key on a new object b

Re: sync cayenne cache in two web apps

2009-07-30 Thread Malcolm Edgar
On Thu, Jul 30, 2009 at 6:47 PM, Tobias Schoessler wrote: > Thanks everyone for the posts. > > @Mike, I am still not convinced that using the Remote Notification Feature > is really nessecary here. After all, there seems to be a JVM shared between > webapps in Tomcat and the article posted seems to

Re: sync cayenne cache in two web apps

2009-07-30 Thread Tobias Schoessler
Thanks everyone for the posts. @Mike, I am still not convinced that using the Remote Notification Feature is really nessecary here. After all, there seems to be a JVM shared between webapps in Tomcat and the article posted seems to proof that there is a possiblity to share information between the