On Tue, Feb 10, 2009 at 12:31 PM, bongosdude <bongosd...@gmail.com> wrote:

>
> Kevin,
>
> I have turned on the SQL trace and did not see any hints why this
> happened.


The format of your logging property doesn't look right, so that might be
reason why the output doesn't give any hints.  :-)  Maybe the "tmp" is
ignored.  Not sure.  Try something like this:

<property name="openjpa.Log" value="DefaultLevel=TRACE"/>

This will turn on all Tracing, not just the SQL tracing.  This might help
explain why the extra entities and persistence units are getting processed.


Entities in the second units are defined but there are not
> session API to access it yet. And I do not set any properties to
> create table at all. OpenJPA see that the tables in the second unit do
> not exists in the first unit and try to create in the first unit.


Very strange.  Have not experienced that.


>
> What are the work around solution?


Except for separating the persistence units into separate persistence.xml
files, I'm not sure at this point.  This is a new problem for me, so I'm not
sure how or why you are experiencing it.

Kevin

>
>
> -B
> On Feb 10, 2009, at 12:57 PM, Kevin Sutter (via Nabble) wrote:
>
> > Hi,
> > A situation similar to this was first reported to me back in August
> > by the
> > author of an IBM Redbook (
> >
> http://www.redbooks.ibm.com/Redbooks.nsf/RedpieceAbstracts/sg247639.html?Open
> )
> > .
> > After I gave the "standard" answers of how this might be happening,
> > I never
> > heard back.  So, I don't know if the problem was resolved by
> > application
> > review or if they decided to live with the situation or what they
> > did.  You
> > might want to reference the Redbook to see if there's any reference
> > to the
> > situation.
> >
> > First off, the tables should only be created if you are using the
> > SynchronizeMappings property.  Since I don't see that in your
> > persistence.xml, then I don't see how the tables are getting created
> > automatically.  Unless you have a different version of the
> > persistence.xml
> > file that is getting picked up somehow.  Or, maybe your build
> > process is
> > invoking the MappingTool?  Not sure.  I have never experienced
> > anything like
> > that.
> >
> > As far as creating the empty tables...  My guess is that your junit
> > test is
> > (accidentally?) touching both entities, thus creating both tables.
> > If you
> > turn on the complete openjpa trace, you can see the processing of the
> > entities within each persistence unit.  So, either the entities are
> > being
> > specified via some property or they are being touched by your
> > application.
> > That's my guess.  The trace would give more data to go off of.
> >
> > IIRC, there is one limitation with the MappingTool and/or
> > SynchronizeMappings that it will only process the entities in the
> > first
> > defined persistence unit within a persistence.xml file.  But, even
> > that
> > doesn't seem to apply in this case since you are indicating that the
> > tables
> > are getting created via the second persistence unit.
> >
> > Hopefully, the trace will show who is accessing what and causing the
> > entity
> > processing and table creation.
> >
> > Good luck,
> > Kevin
> >
> >
> > On Tue, Feb 10, 2009 at 11:36 AM, bongosdude <bongosd...@...> wrote:
> >
> > >
> > > I defined two persistence units in my persistence.xml to connect
> > to two
> > > different databases (one is MySQL and other to MS SQL) like below
> > >
> > > <persistence xmlns="http://java.sun.com/xml/ns/persistence";
> > >             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
> > > version="1.0"
> > >             xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
> > > http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd";>
> > >    <persistence-unit name="CallingCardUsersUnit">
> > >        <description>Entity Beans to db1</description>
> > >
> > > <provider>org.apache.openjpa.persistence.PersistenceProviderImpl</
> > provider>
> > >        <non-jta-data-source>db_users_notx</non-jta-data-source>
> > >
> > <class>com.xyz.services.app.model.entity.users.User</class>
> > >
> > >  <class>com.xyz.services.app.model.entity.users.UserRole</class>
> > >
> > >  <class>com.xyz.services.app.model.entity.users.UserAccount</class>
> > >                <properties>
> > >                        <property name="/tmp/openjpa.log"
> > value="SQL=TRACE"
> > > />
> > >                </properties>
> > >    </persistence-unit>
> > >
> > >    <persistence-unit name="DigittalkUnit">
> > >        <description>Entity Beans for db2</description>
> > >
> > > <provider>org.apache.openjpa.persistence.PersistenceProviderImpl</
> > provider>
> > >        <non-jta-data-source>billing_notx</non-jta-data-source>
> > >        <class>com.xyz.services.app.model.entity.billing.BUser</
> > class>
> > >        <class>com.xyz.services.app.model.entity.billing.BAccount</
> > class>
> > >                <properties>
> > >                        <property name="/tmp/openjpa.log"
> > value="SQL=TRACE"
> > > />
> > >                </properties>
> > >    </persistence-unit>
> > >
> > >
> > > </persistence>
> > >
> > >
> > > When my app first starts up and runs, I need to access entity
> > > com.xyz.services.app.model.entity.users.User, JPA tries to load
> > entiry
> > > com.xyz.services.app.model.entity.users.User and then it tries to
> > create
> > > table BUser and BAccount in the first persistence unit. BUser and
> > BAccount
> > > are listed in second persistence unit. Also, BUser and BAccount
> > are mapped
> > > to existing tables in second persistence unit.
> > >
> > > Can someone help me since I do not understand why it happens.
> > Also, How can
> > > I turn of the auto create table.
> > >
> > > Thanks
> > > -B
> > > --
> > > View this message in context:
> > >
> http://n2.nabble.com/Problem-with-multi-persistence-units-tp2303818p2303818.html
> > > Sent from the OpenJPA Users mailing list archive at Nabble.com.
> > >
> > >
> >
> >
> > This email is a reply to your post @
> http://n2.nabble.com/Problem-with-multi-persistence-units-tp2303818p2303948.html
> > You can reply by email or by visting the link above.
> >
>
>
> --
> View this message in context:
> http://n2.nabble.com/Problem-with-multi-persistence-units-tp2303818p2304147.html
> Sent from the OpenJPA Users mailing list archive at Nabble.com.
>

Reply via email to