It seems that you did not close the broker transaction after use!
cheers, Thomas
Dave Hodson wrote:
I'm using 1.0RC3 and running into the following error:
"ConnectionManager is already in transaction" when trying to commit a new transaction to the DB.
Any queries by criteria or identity work properly. The method is a member of a class that is extended by others -- items to be written to the DB are passed as generic objects.
Suggestions? What am I doing incorrectly?
Dave
Code is as follows: --------------------- protected void Put (Object o, Class c) { Transaction tx = odmg.newTransaction(); tx.begin(); try { // lock the product for write access tx.lock(o, tx.WRITE); tx.commit(); } catch (Throwable t) { tx.abort(); log.error("Put failed for " + c.getName() + " : " + t); } }
Stack is as follows: ------------------------ [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] ERROR: PersistenceBrokerException during the execution of the insert: ConnectionManager is already in transaction ConnectionManager is already in transaction org.apache.ojb.broker.TransactionInProgressException: ConnectionManager is already in transaction at org.apache.ojb.broker.core.PersistenceBrokerImpl.beginTransaction(PersistenceBrokerImpl.java:361) at org.apache.ojb.broker.core.DelegatingPersistenceBroker.beginTransaction(DelegatingPersistenceBroker.java:114) at org.apache.ojb.broker.util.sequence.SequenceManagerHighLowImpl.getSequence(SequenceManagerHighLowImpl.java:260) at org.apache.ojb.broker.util.sequence.SequenceManagerHighLowImpl.getUniqueLong(SequenceManagerHighLowImpl.java:201) at org.apache.ojb.broker.util.sequence.AbstractSequenceManager.getUniqueId(AbstractSequenceManager.java:252) at org.apache.ojb.broker.util.sequence.AbstractSequenceManager.getUniqueValue(AbstractSequenceManager.java:167) at org.apache.ojb.broker.util.BrokerHelper.getAutoIncrementValue(BrokerHelper.java:303) at org.apache.ojb.broker.util.BrokerHelper.getValuesForObject(BrokerHelper.java:349) at org.apache.ojb.broker.util.BrokerHelper.getAllRwValues(BrokerHelper.java:380) at org.apache.ojb.broker.accesslayer.StatementManager.getAllValues(StatementManager.java:725) at org.apache.ojb.broker.accesslayer.StatementManager.bindInsert(StatementManager.java:487) at org.apache.ojb.broker.accesslayer.JdbcAccessImpl.executeInsert(JdbcAccessImpl.java:198) at org.apache.ojb.broker.core.PersistenceBrokerImpl.storeToDb(PersistenceBrokerImpl.java:1919) at org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBrokerImpl.java:1834) at org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBrokerImpl.java:1792) at org.apache.ojb.broker.core.DelegatingPersistenceBroker.store(DelegatingPersistenceBroker.java:161) at org.apache.ojb.odmg.states.StateNewDirty.commit(StateNewDirty.java:148) at org.apache.ojb.odmg.ObjectEnvelopeTable.commitAllEnvelopes(ObjectEnvelopeTable.java:234) at org.apache.ojb.odmg.ObjectEnvelopeTable.commit(ObjectEnvelopeTable.java:189) at org.apache.ojb.odmg.TransactionImpl.doCommitOnObjects(TransactionImpl.java:342) at org.apache.ojb.odmg.TransactionImpl.prepare(TransactionImpl.java:595) at org.apache.ojb.odmg.TransactionImpl.commit(TransactionImpl.java:545) at net.messagecast.rec.RecOJBMgr.Put(RecOJBMgr.java:83)
--------------------------------------------------------------------- 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]
