Check the jars you are using.

"Until they become conscious they will never rebel, and until after they
have rebelled they cannot become conscious"
--Orwell 1984
----- Original Message ----- 
From: "Eric Northam" <[EMAIL PROTECTED]>
To: "'OJB Users List'" <[EMAIL PROTECTED]>
Sent: Wednesday, June 11, 2003 12:56 PM
Subject: RE: Non-decomposed m:n mappings with ODMG


> I tried it with hsql and still receive an error. Still lost as to why a
> violation of unique index would occur. The statement works fine if I
execute
> it outside of OJB. Is there any possibility the insert could occur twice
in
> the same transaction? Here's the output with the error:
>
>
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] ERROR: SQLException
> during the execution of the insert (for a xxx.bo.Notification): Violation
of
> unique index: SYS_PK_NOTIFICATION in statement [INSERT INTO notification
> (notification_id,name,type) VALUES (16,'Test notification',NULL) ]
> Violation of unique index: SYS_PK_NOTIFICATION in statement [INSERT INTO
> notification (notification_id,name,type) VALUES (16,'Test
> notification',NULL) ]
> [org.apache.ojb.odmg.ObjectEnvelopeTable] ERROR: Commit on object level
> failed for tx [EMAIL PROTECTED]
> Violation of unique index: SYS_PK_NOTIFICATION in statement [INSERT INTO
> notification (notification_id,name,type) VALUES (16,'Test
> notification',NULL) ]
> [org.apache.ojb.odmg.TransactionImpl] ERROR: Could not prepare for commit:
> null
> [org.apache.ojb.broker.accesslayer.ConnectionManagerImpl] INFO: Rollback
was
> called, do rollback on current connection [EMAIL PROTECTED]
> ------------- ---------------- ---------------
> ------------- Standard Error -----------------
> java.sql.SQLException: Violation of unique index: SYS_PK_NOTIFICATION in
> statement [INSERT INTO notification (notification_id,name,type) VALUES
> (16,'Test notification',NULL) ]
> at org.hsqldb.Trace.getError(Unknown Source)
> at org.hsqldb.Result.<init>(Unknown Source)
> at org.hsqldb.jdbcConnection.executeHSQL(Unknown Source)
> at org.hsqldb.jdbcConnection.execute(Unknown Source)
> at org.hsqldb.jdbcStatement.fetchResult(Unknown Source)
> at org.hsqldb.jdbcStatement.executeUpdate(Unknown Source)
> at org.hsqldb.jdbcPreparedStatement.executeUpdate(Unknown Source)
> at
> org.apache.ojb.broker.accesslayer.JdbcAccessImpl.executeInsert(Unknown
> Source)
> at
> org.apache.ojb.broker.core.PersistenceBrokerImpl.storeToDb(Unknown Source)
> at org.apache.ojb.broker.core.PersistenceBrokerImpl.store(Unknown
> Source)
> at org.apache.ojb.broker.core.PersistenceBrokerImpl.store(Unknown
> Source)
> at
> org.apache.ojb.broker.core.DelegatingPersistenceBroker.store(Unknown
Source)
> at org.apache.ojb.odmg.states.StateNewDirty.commit(Unknown Source)
> at
> org.apache.ojb.odmg.ObjectEnvelopeTable.commitAllEnvelopes(Unknown Source)
> at org.apache.ojb.odmg.ObjectEnvelopeTable.commit(Unknown Source)
> at org.apache.ojb.odmg.TransactionImpl.doCommitOnObjects(Unknown
> Source)
> at org.apache.ojb.odmg.TransactionImpl.prepare(Unknown Source)
> at org.apache.ojb.odmg.TransactionImpl.commit(Unknown Source)
>
> -----Original Message-----
> From: Armin Waibel [mailto:[EMAIL PROTECTED]
> Sent: Wednesday, June 11, 2003 9:09 AM
> To: OJB Users List
> Subject: Re: Non-decomposed m:n mappings with ODMG
>
>
> Hi Eric,
>
> try to set up your test scenario using hsql to
> see if this also fail. Should be easy to do
> (use SequenceManagerInMemoryImpl - does
> not need a database table).
>
> regards,
> Armin
>
> ----- Original Message -----
> From: "Eric Northam" <[EMAIL PROTECTED]>
> To: "'OJB Users List'" <[EMAIL PROTECTED]>
> Sent: Wednesday, June 11, 2003 2:56 PM
> Subject: RE: Non-decomposed m:n mappings with ODMG
>
>
> > Still no luck with a clean database. There are three tables involved
> in the
> > mapping and there are no special constraints unless you consider the
> primary
> > keys which are listed as follows:
> >
> > lead table
> > lead_id
> >
> > notification table
> > notification_id
> >
> > notification_lead table
> > lead_id
> > notification_id
> >
> >
> >
> > -----Original Message-----
> > From: Mauricio CASTRO [mailto:[EMAIL PROTECTED]
> > Sent: Tuesday, June 10, 2003 4:53 PM
> > To: OJB Users List
> > Subject: Re: Non-decomposed m:n mappings with ODMG
> >
> >
> > May be you have DB constraints set like a PK. May be you have a unique
> > restriction in the lead table and you already inserted a record with
> fn=eric
> > and ln=Northam. Try to change the data and run it again or delete all
> the
> > tables.
> >
> >
> > "Until they become conscious they will never rebel, and until after
> they
> > have rebelled they cannot become conscious" --Orwell 1984
> > ----- Original Message -----
> > From: "Eric Northam" <[EMAIL PROTECTED]>
> > To: "'OJB Users List'" <[EMAIL PROTECTED]>
> > Sent: Tuesday, June 10, 2003 3:41 PM
> > Subject: RE: Non-decomposed m:n mappings with ODMG
> >
> >
> > > Sure thing,
> > >
> > > The following causes a BatchUpdateException:
> > >
> > > Invalid argument value,  message from server: "Duplicate entry '41'
> > > for
> > key
> > > 1"
> > > java.sql.BatchUpdateException: Invalid argument value,  message from
> > server:
> > > "Duplicate entry '41' for key 1
> > >
> > >     at
> > >
> com.mysql.jdbc.PreparedStatement.executeBatch(PreparedStatement.java:136
> 7)
> > >     at
> > >
> >
> org.apache.ojb.broker.util.batch.PreparedStatementInvocationHandler.doEx
> ecut
> > > e(Unknown Source)
> > >     at
> > >
> >
> org.apache.ojb.broker.util.batch.PreparedStatementInvocationHandler.invo
> ke(U
> > > nknown Source)
> > >     at $Proxy0.doExecute(Unknown Source)
> > >     at
> > org.apache.ojb.broker.util.batch.BatchConnection.executeBatch(Unknown
> > > Source)
> > >
> > > ....
> > >
> > > --- Store code ----
> > >
> > >         Implementation odmg = OJB.getInstance();
> > >         Database db = odmg.newDatabase();
> > >
> > >         Lead leadBO = new Lead();
> > >         leadBO.setFirstName("Eric");
> > >         leadBO.setLastName("Northam");
> > >         leadBO.setEmail("[EMAIL PROTECTED]");
> > >
> > >         Notification notification = new Notification();
> > >         notification.setName("Test notification");
> > >
> > >         ArrayList notifications = new ArrayList();
> > >         notifications.add(notification);
> > >         leadBO.setNotifications(notifications);
> > >
> > >         db.open(null, Database.OPEN_READ_WRITE);
> > >
> > >         Transaction tx = odmg.newTransaction();
> > >
> > >         tx.begin();
> > >         tx.lock(leadBO, Transaction.WRITE);
> > >         tx.commit();
> > >
> > > ---
> > >
> > > --- repository_user.xml ---
> > >
> > > <class-descriptor class="xxx.bo.Lead" table="lead">
> <field-descriptor
> > > name="id" column="lead_id" jdbc-type="INTEGER" primarykey="true"
> > > autoincrement="true"/> <field-descriptor name="firstName"
> > > column="first_name" jdbc-type="VARCHAR"/> <field-descriptor
> > > name="lastName" column="last_name" jdbc-type="VARCHAR"/>
> > > <field-descriptor name="email" column="email"
> > > jdbc-type="VARCHAR"/>
> > > <collection-descriptor name="notifications"
> > > element-class-ref="xxx.bo.Notification" auto-retrieve="true"
> > > auto-update="true" indirection-table="notification_lead">
> > > <fk-pointing-to-this-class column="lead_id"/>
> > > <fk-pointing-to-element-class
> > > column="notification_id"/>
> > > </collection-descriptor>
> > > </class-descriptor>
> > >
> > > <class-descriptor class="xxx.bo.Notification" table="notification">
> > > <field-descriptor name="id" column="notification_id"
> > > jdbc-type="INTEGER" primarykey="true" autoincrement="true"/>
> > > <field-descriptor name="name" column="name" jdbc-type="VARCHAR"/>
> > > <field-descriptor name="type" column="type" jdbc-type="VARCHAR"/>
> > > <collection-descriptor name="leads"
> > > element-class-ref="xxx.bo.Lead" auto-retrieve="true"
> auto-update="true"
> > > indirection-table="notification_lead" > <fk-pointing-to-this-class
> > > column="notification_id"/>
> > > <fk-pointing-to-element-class column="lead_id"/>
> > > </collection-descriptor>
> > > </class-descriptor>
> > >
> > > -------
> > >
> > >
> > > TIA,
> > >
> > > Eric
> > >
> > > -----Original Message-----
> > > From: Mauricio CASTRO [mailto:[EMAIL PROTECTED]
> > > Sent: Tuesday, June 10, 2003 4:12 PM
> > > To: OJB Users List
> > > Subject: Re: Non-decomposed m:n mappings with ODMG
> > >
> > >
> > > Eric,
> > >
> > > No, I use Postgesql. Try to post your repository_user.xml, and the
> > > source code that is supposed to do the work.
> > >
> > >
> > > Mauricio Castro.
> > >
> > > "Until they become conscious they will never rebel, and until after
> > > they have rebelled they cannot become conscious" --Orwell 1984
> > > ----- Original Message -----
> > > From: "Eric Northam" <[EMAIL PROTECTED]>
> > > To: "'OJB Users List'" <[EMAIL PROTECTED]>
> > > Sent: Tuesday, June 10, 2003 3:12 PM
> > > Subject: RE: Non-decomposed m:n mappings with ODMG
> > >
> > >
> > > > You wouldn't happen to be using MySQL?
> > > >
> > > > -----Original Message-----
> > > > From: Mauricio CASTRO [mailto:[EMAIL PROTECTED]
> > > > Sent: Tuesday, June 10, 2003 4:06 PM
> > > > To: OJB Users List
> > > > Subject: Re: Non-decomposed m:n mappings with ODMG
> > > >
> > > >
> > > >
> > > > I succesfuly use an m:n mapping and ODMG.
> > > >
> > > > "Until they become conscious they will never rebel, and until
> after
> > > > they have rebelled they cannot become conscious" --Orwell 1984
> > > > ----- Original Message -----
> > > > From: "Eric Northam" <[EMAIL PROTECTED]>
> > > > To: <[EMAIL PROTECTED]>
> > > > Sent: Tuesday, June 10, 2003 3:07 PM
> > > > Subject: Non-decomposed m:n mappings with ODMG
> > > >
> > > >
> > > > > Has anyone been able to store an object with an m:n mapping
> using
> > > > > the ODMG api? It works fine with the persistence broker but
> > > > > doesn't work with ODMG
> > > > as
> > > > > far as I can tell. Unfortunately I have several objects with a
> > > > > many to
> > > > many
> > > > > relationship so I'm wondering whether I should drop using the
> ODMG
> > > > > api all together. Is there any consequence to using both ODMG
> and
> > > > > the persistence broker together as a workaround?
> > > > >
> > > > > Eric
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > DISCLAIMER: The information contained in this e-mail is, unless
> > > > > otherwise indicated, confidential and is intended solely for the
> > > > > use of the named addressee. Access, copying or re-use of the
> > > > > e-mail or any information contained therein by any other person
> is
> > > > > not authorized. If you are not
> > > > the
> > > > > intended recipient please notify us immediately by returning the
> > > > > e-mail to the originator.
> > > > >
> > > >
> > >
> > --------------------------------------------------------------------
> > > > -
> > > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > > For additional commands, e-mail: [EMAIL PROTECTED]
> > > >
> > > >
> > > >
> > > >
> > > >
> > > > DISCLAIMER: The information contained in this e-mail is, unless
> > > > otherwise indicated, confidential and is intended solely for the
> use
> > > > of the named addressee. Access, copying or re-use of the e-mail or
> > > > any information contained therein by any other person is not
> > > > authorized. If you are not
> > > the
> > > > intended recipient please notify us immediately by returning the
> > > > e-mail to the originator.
> > > >
> > >
> >
> > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > For additional commands, e-mail: [EMAIL PROTECTED]
> > >
> > >
> > >
> > >
> > >
> > > DISCLAIMER: The information contained in this e-mail is, unless
> > > otherwise indicated, confidential and is intended solely for the use
> > > of the named addressee. Access, copying or re-use of the e-mail or
> any
> > > information contained therein by any other person is not authorized.
> > > If you are not
> > the
> > > intended recipient please notify us immediately by returning the
> > > e-mail to the originator.
> > >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
> >
> >
> >
> > DISCLAIMER: The information contained in this e-mail is, unless
> otherwise
> > indicated, confidential and is intended solely for the use of the
> named
> > addressee. Access, copying or re-use of the e-mail or any information
> > contained therein by any other person is not authorized. If you are
> not the
> > intended recipient please notify us immediately by returning the
> e-mail to
> > the originator.
> >
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
>
>
>
> DISCLAIMER: The information contained in this e-mail is, unless otherwise
> indicated, confidential and is intended solely for the use of the named
> addressee. Access, copying or re-use of the e-mail or any information
> contained therein by any other person is not authorized. If you are not
the
> intended recipient please notify us immediately by returning the e-mail to
> the originator.
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to