I just added code for a temporary vector and it worked. The change below
must have gotten lost.
Or was there a problem with the solution?
--Bill.

----- Original Message -----
From: "V.B. Skrypnyk" <[EMAIL PROTECTED]>
To: "OJB Users List" <[EMAIL PROTECTED]>
Sent: Wednesday, March 05, 2003 10:24 PM
Subject: ODMG recursive locking / ConcurrentModificationException


> Hi,
>
> I found a thread on the list
>
(http://archives.apache.org/eyebrowse/[EMAIL PROTECTED]
> he.org&msgId=593039) in which it is said:
> >Indeed you stumbled across a bug in the ObjectEnvelopeTable class. The
> >bug was fixed on 2002/12/23 13:27:59 which means it is not available on
> >version 0.9.8. It is however available directly from the cvs server.
> >
> >The Concurrent Modification Exception occurs while upgrading the
> >locks in a commit operation of the ObjectEnvelopeTable class. The
> >solution we came up with was to iterate over temporary vector while
> >upgrading the locks.
> >
> >Cheers,
> >Luis Cruz
> I have just downloaded the latest cvs version, and I have the same
problem.
> Did the change get lost by any chance?
> --Bill
> My stack trace:
>      [java] java.util.ConcurrentModificationException     [java]     at
> java.util.AbstractList$Itr.checkForComodification(AbstractList.java:444)
> [java] [org.apache.ojb.odmg.ObjectEnvelopeTable] ERROR: Commit on object
> level failed for tx [EMAIL PROTECTED]     [java]
> at java.util.AbstractList$Itr.next(AbstractList.java:417)     [java]
at
>
org.apache.ojb.odmg.ObjectEnvelopeTable.commitAllEnvelopes(ObjectEnvelopeTab
> le.java:218)     [java]     at
>
org.apache.ojb.odmg.ObjectEnvelopeTable.commit(ObjectEnvelopeTable.java:187)
> [java] null     [java] [org.apache.ojb.odmg.TransactionImpl] ERROR: Could
> not prepare for commit: null     [java]     at
>
org.apache.ojb.odmg.TransactionImpl.doCommitOnObjects(TransactionImpl.java:3
> 26)     [java]     at
> org.apache.ojb.odmg.TransactionImpl.prepare(TransactionImpl.java:575)
> [java]     at
> org.apache.ojb.odmg.TransactionImpl.commit(TransactionImpl.java:525)
> [java]     at test.Test.main(Test.java:70)     [java]
> [org.apache.ojb.broker.accesslayer.ConnectionManagerImpl] INFO: Rollback
was
> called, do rollback on current connection
> [EMAIL PROTECTED]     [java]
> java.sql.SQLException: General error: Warning:  Some non-transactional
> changed tables couldn't be rolled back     [java]     at
> org.gjt.mm.mysql.MysqlIO.sendCommand(MysqlIO.java:497)     [java]
> [org.apache.ojb.broker.accesslayer.ConnectionManagerImpl] ERROR: Rollback
on
> the underlying connection failed     [java]     at
> org.gjt.mm.mysql.MysqlIO.sqlQueryDirect(MysqlIO.java:550)     [java]
at
> org.gjt.mm.mysql.MysqlIO.sqlQuery(MysqlIO.java:635)     [java] General
> error: Warning:  Some non-transactional changed tables couldn't be rolled
> back     [java]     at
> org.gjt.mm.mysql.Connection.execSQL(Connection.java:882)     [java]     at
> org.gjt.mm.mysql.Connection.execSQL(Connection.java:815)     [java]     at
> org.gjt.mm.mysql.Connection.rollback(Connection.java:551)     [java]
at
>
com.p6spy.engine.logging.P6LogConnection.rollback(P6LogConnection.java:145)
> [java]     at
>
org.apache.ojb.broker.accesslayer.ConnectionManagerImpl.localRollback(Connec
> tionManagerImpl.java:245)     [java]     at
>
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.abortTransaction(Persis
> tenceBrokerImpl.java:358)     [java]     at
>
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.close(PersistenceBroker
> Impl.java:320)     [java]     at
>
org.apache.ojb.broker.singlevm.DelegatingPersistenceBroker.close(DelegatingP
> ersistenceBroker.java:132)     [java]     at
>
org.apache.ojb.broker.singlevm.PoolablePersistenceBroker.close(PoolablePersi
> stenceBroker.java:28)     [java]     at
> org.apache.ojb.odmg.TransactionImpl.doClose(TransactionImpl.java:424)
> [java]     at
> org.apache.ojb.odmg.TransactionImpl.commit(TransactionImpl.java:548)
> [java]     at test.Test.main(Test.java:70)     [java]
> org.odmg.TransactionAbortedException     [java]     at
>
org.apache.ojb.odmg.ObjectEnvelopeTable.commit(ObjectEnvelopeTable.java:198)
> [java]     at
>
org.apache.ojb.odmg.TransactionImpl.doCommitOnObjects(TransactionImpl.java:3
> 26)     [java]     at
> org.apache.ojb.odmg.TransactionImpl.prepare(TransactionImpl.java:575)
> [java]     at
> org.apache.ojb.odmg.TransactionImpl.commit(TransactionImpl.java:525)
> [java]     at test.Test.main(Test.java:70)     [java] Exception in thread
> "main"     [java] Java Result: 1
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


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

Reply via email to